/**
 * CODE GENERATED BY 'typgen' BINARY.
 *
 * DO NOT EDIT.
 */ import { KubernetesObject } from 'kpt-functions' ; import * as apisMetaV1 from './io.k8s.apimachinery.pkg.apis.meta.v1' ; export class AggregationRule { public clusterRoleSelectors ? : apisMetaV1 . LabelSelector [ ] ; } export class ClusterRole implements KubernetesObject { public aggregationRule ? : AggregationRule ; public apiVersion : string ; public kind : string ; public metadata : apisMetaV1 . ObjectMeta ; public rules ? : PolicyRule [ ] ; constructor ( desc ) { this . aggregationRule = desc . aggregationRule ; this . apiVersion = ClusterRole . apiVersion ; this . kind = ClusterRole . kind ; this . metadata = desc . metadata ; this . rules = desc . rules ; } } export function isClusterRole ( o ) { return o && o . apiVersion === ClusterRole . apiVersion && o . kind === ClusterRole . kind ; } export namespace ClusterRole { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "ClusterRole" ; export function named ( name ) { return new ClusterRole ( { metadata : { name } } ) ; } export interface Interface { aggregationRule ? : AggregationRule ; metadata : apisMetaV1 . ObjectMeta ; rules ? : PolicyRule [ ] ; } } export class ClusterRoleBinding implements KubernetesObject { public apiVersion : string ; public kind : string ; public metadata : apisMetaV1 . ObjectMeta ; public roleRef : RoleRef ; public subjects ? : Subject [ ] ; constructor ( desc ) { this . apiVersion = ClusterRoleBinding . apiVersion ; this . kind = ClusterRoleBinding . kind ; this . metadata = desc . metadata ; this . roleRef = desc . roleRef ; this . subjects = desc . subjects ; } } export function isClusterRoleBinding ( o ) { return o && o . apiVersion === ClusterRoleBinding . apiVersion && o . kind === ClusterRoleBinding . kind ; } export namespace ClusterRoleBinding { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "ClusterRoleBinding" ; export interface Interface { metadata : apisMetaV1 . ObjectMeta ; roleRef : RoleRef ; subjects ? : Subject [ ] ; } } export class ClusterRoleBindingList { public apiVersion : string ; public items : ClusterRoleBinding [ ] ; public kind : string ; public metadata ? : apisMetaV1 . ListMeta ; constructor ( desc ) { this . apiVersion = ClusterRoleBindingList . apiVersion ; this . items = desc . items . map ( ( i ) => new ClusterRoleBinding ( i ) ) ; this . kind = ClusterRoleBindingList . kind ; this . metadata = desc . metadata ; } } export function isClusterRoleBindingList ( o ) { return o && o . apiVersion === ClusterRoleBindingList . apiVersion && o . kind === ClusterRoleBindingList . kind ; } export namespace ClusterRoleBindingList { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "ClusterRoleBindingList" ; export interface Interface { items : ClusterRoleBinding [ ] ; metadata ? : apisMetaV1 . ListMeta ; } } export class ClusterRoleList { public apiVersion : string ; public items : ClusterRole [ ] ; public kind : string ; public metadata ? : apisMetaV1 . ListMeta ; constructor ( desc ) { this . apiVersion = ClusterRoleList . apiVersion ; this . items = desc . items . map ( ( i ) => new ClusterRole ( i ) ) ; this . kind = ClusterRoleList . kind ; this . metadata = desc . metadata ; } } export function isClusterRoleList ( o ) { return o && o . apiVersion === ClusterRoleList . apiVersion && o . kind === ClusterRoleList . kind ; } export namespace ClusterRoleList { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "ClusterRoleList" ; export interface Interface { items : ClusterRole [ ] ; metadata ? : apisMetaV1 . ListMeta ; } } export class PolicyRule { public apiGroups ? : string [ ] ; public nonResourceURLs ? : string [ ] ; public resourceNames ? : string [ ] ; public resources ? : string [ ] ; public verbs : string [ ] ; constructor ( desc ) { this . apiGroups = desc . apiGroups ; this . nonResourceURLs = desc . nonResourceURLs ; this . resourceNames = desc . resourceNames ; this . resources = desc . resources ; this . verbs = desc . verbs ; } } export class Role implements KubernetesObject { public apiVersion : string ; public kind : string ; public metadata : apisMetaV1 . ObjectMeta ; public rules ? : PolicyRule [ ] ; constructor ( desc ) { this . apiVersion = Role . apiVersion ; this . kind = Role . kind ; this . metadata = desc . metadata ; this . rules = desc . rules ; } } export function isRole ( o ) { return o && o . apiVersion === Role . apiVersion && o . kind === Role . kind ; } export namespace Role { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "Role" ; export function named ( name ) { return new Role ( { metadata : { name } } ) ; } export interface Interface { metadata : apisMetaV1 . ObjectMeta ; rules ? : PolicyRule [ ] ; } } export class RoleBinding implements KubernetesObject { public apiVersion : string ; public kind : string ; public metadata : apisMetaV1 . ObjectMeta ; public roleRef : RoleRef ; public subjects ? : Subject [ ] ; constructor ( desc ) { this . apiVersion = RoleBinding . apiVersion ; this . kind = RoleBinding . kind ; this . metadata = desc . metadata ; this . roleRef = desc . roleRef ; this . subjects = desc . subjects ; } } export function isRoleBinding ( o ) { return o && o . apiVersion === RoleBinding . apiVersion && o . kind === RoleBinding . kind ; } export namespace RoleBinding { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "RoleBinding" ; export interface Interface { metadata : apisMetaV1 . ObjectMeta ; roleRef : RoleRef ; subjects ? : Subject [ ] ; } } export class RoleBindingList { public apiVersion : string ; public items : RoleBinding [ ] ; public kind : string ; public metadata ? : apisMetaV1 . ListMeta ; constructor ( desc ) { this . apiVersion = RoleBindingList . apiVersion ; this . items = desc . items . map ( ( i ) => new RoleBinding ( i ) ) ; this . kind = RoleBindingList . kind ; this . metadata = desc . metadata ; } } export function isRoleBindingList ( o ) { return o && o . apiVersion === RoleBindingList . apiVersion && o . kind === RoleBindingList . kind ; } export namespace RoleBindingList { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "RoleBindingList" ; export interface Interface { items : RoleBinding [ ] ; metadata ? : apisMetaV1 . ListMeta ; } } export class RoleList { public apiVersion : string ; public items : Role [ ] ; public kind : string ; public metadata ? : apisMetaV1 . ListMeta ; constructor ( desc ) { this . apiVersion = RoleList . apiVersion ; this . items = desc . items . map ( ( i ) => new Role ( i ) ) ; this . kind = RoleList . kind ; this . metadata = desc . metadata ; } } export function isRoleList ( o ) { return o && o . apiVersion === RoleList . apiVersion && o . kind === RoleList . kind ; } export namespace RoleList { export const apiVersion = "rbac.authorization.k8s.io/v1beta1" ; export const group = "rbac.authorization.k8s.io" ; export const version = "v1beta1" ; export const kind = "RoleList" ; export interface Interface { items : Role [ ] ; metadata ? : apisMetaV1 . ListMeta ; } } export class RoleRef { public apiGroup : string ; public kind : string ; public name : string ; constructor ( desc ) { this . apiGroup = desc . apiGroup ; this . kind = desc . kind ; this . name = desc . name ; } } export class Subject { public apiGroup ? : string ; public kind : string ; public name : string ; public namespace ? : string ; constructor ( desc ) { this . apiGroup = desc . apiGroup ; this . kind = desc . kind ; this . name = desc . name ; this . namespace = desc . namespace ; } }