UNPKG

@cdktf/provider-kubernetes

Version:

Prebuilt kubernetes Provider for Terraform CDK (cdktf)

264 lines (263 loc) 13.4 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface IngressClassV1Config extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#id IngressClassV1#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * metadata block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#metadata IngressClassV1#metadata} */ readonly metadata: IngressClassV1Metadata; /** * spec block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#spec IngressClassV1#spec} */ readonly spec: IngressClassV1Spec; } export interface IngressClassV1Metadata { /** * An unstructured key value map stored with the ingress_class_v1 that may be used to store arbitrary metadata. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#annotations IngressClassV1#annotations} */ readonly annotations?: { [key: string]: string; }; /** * Prefix, used by the server, to generate a unique name ONLY IF the `name` field has not been provided. This value will also be combined with a unique suffix. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#idempotency * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#generate_name IngressClassV1#generate_name} */ readonly generateName?: string; /** * Map of string keys and values that can be used to organize and categorize (scope and select) the ingress_class_v1. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#labels IngressClassV1#labels} */ readonly labels?: { [key: string]: string; }; /** * Name of the ingress_class_v1, must be unique. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#name IngressClassV1#name} */ readonly name?: string; } export declare function ingressClassV1MetadataToTerraform(struct?: IngressClassV1MetadataOutputReference | IngressClassV1Metadata): any; export declare function ingressClassV1MetadataToHclTerraform(struct?: IngressClassV1MetadataOutputReference | IngressClassV1Metadata): any; export declare class IngressClassV1MetadataOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IngressClassV1Metadata | undefined; set internalValue(value: IngressClassV1Metadata | undefined); private _annotations?; get annotations(): { [key: string]: string; }; set annotations(value: { [key: string]: string; }); resetAnnotations(): void; get annotationsInput(): { [key: string]: string; } | undefined; private _generateName?; get generateName(): string; set generateName(value: string); resetGenerateName(): void; get generateNameInput(): string | undefined; get generation(): number; private _labels?; get labels(): { [key: string]: string; }; set labels(value: { [key: string]: string; }); resetLabels(): void; get labelsInput(): { [key: string]: string; } | undefined; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string | undefined; get resourceVersion(): string; get uid(): string; } export interface IngressClassV1SpecParameters { /** * APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#api_group IngressClassV1#api_group} */ readonly apiGroup?: string; /** * Kind is the type of resource being referenced * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#kind IngressClassV1#kind} */ readonly kind: string; /** * Name is the name of resource being referenced * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#name IngressClassV1#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#namespace IngressClassV1#namespace} */ readonly namespace?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#scope IngressClassV1#scope} */ readonly scope?: string; } export declare function ingressClassV1SpecParametersToTerraform(struct?: IngressClassV1SpecParameters | cdktf.IResolvable): any; export declare function ingressClassV1SpecParametersToHclTerraform(struct?: IngressClassV1SpecParameters | cdktf.IResolvable): any; export declare class IngressClassV1SpecParametersOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): IngressClassV1SpecParameters | cdktf.IResolvable | undefined; set internalValue(value: IngressClassV1SpecParameters | cdktf.IResolvable | undefined); private _apiGroup?; get apiGroup(): string; set apiGroup(value: string); resetApiGroup(): void; get apiGroupInput(): string | undefined; private _kind?; get kind(): string; set kind(value: string); get kindInput(): string | undefined; private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; private _namespace?; get namespace(): string; set namespace(value: string); resetNamespace(): void; get namespaceInput(): string | undefined; private _scope?; get scope(): string; set scope(value: string); resetScope(): void; get scopeInput(): string | undefined; } export declare class IngressClassV1SpecParametersList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: IngressClassV1SpecParameters[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): IngressClassV1SpecParametersOutputReference; } export interface IngressClassV1Spec { /** * controller refers to the name of the controller that should handle this class. This allows for different "flavors" that are controlled by the same controller. For example, you may have different parameters for the same implementing controller. This should be specified as a domain-prefixed path no more than 250 characters in length, e.g. "acme.io/ingress-controller". This field is immutable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#controller IngressClassV1#controller} */ readonly controller?: string; /** * parameters block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#parameters IngressClassV1#parameters} */ readonly parameters?: IngressClassV1SpecParameters[] | cdktf.IResolvable; } export declare function ingressClassV1SpecToTerraform(struct?: IngressClassV1SpecOutputReference | IngressClassV1Spec): any; export declare function ingressClassV1SpecToHclTerraform(struct?: IngressClassV1SpecOutputReference | IngressClassV1Spec): any; export declare class IngressClassV1SpecOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IngressClassV1Spec | undefined; set internalValue(value: IngressClassV1Spec | undefined); private _controller?; get controller(): string; set controller(value: string); resetController(): void; get controllerInput(): string | undefined; private _parameters; get parameters(): IngressClassV1SpecParametersList; putParameters(value: IngressClassV1SpecParameters[] | cdktf.IResolvable): void; resetParameters(): void; get parametersInput(): cdktf.IResolvable | IngressClassV1SpecParameters[] | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1 kubernetes_ingress_class_v1} */ export declare class IngressClassV1 extends cdktf.TerraformResource { static readonly tfResourceType = "kubernetes_ingress_class_v1"; /** * Generates CDKTF code for importing a IngressClassV1 resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the IngressClassV1 to import * @param importFromId The id of the existing IngressClassV1 that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the IngressClassV1 to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/kubernetes/2.38.0/docs/resources/ingress_class_v1 kubernetes_ingress_class_v1} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options IngressClassV1Config */ constructor(scope: Construct, id: string, config: IngressClassV1Config); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _metadata; get metadata(): IngressClassV1MetadataOutputReference; putMetadata(value: IngressClassV1Metadata): void; get metadataInput(): IngressClassV1Metadata | undefined; private _spec; get spec(): IngressClassV1SpecOutputReference; putSpec(value: IngressClassV1Spec): void; get specInput(): IngressClassV1Spec | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }