import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TsfApplicationConfig extends cdktf.TerraformMetaArguments { /** * Application description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#application_desc TsfApplication#application_desc} */ readonly applicationDesc?: string; /** * Application log configuration, deprecated parameter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#application_log_config TsfApplication#application_log_config} */ readonly applicationLogConfig?: string; /** * Application name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#application_name TsfApplication#application_name} */ readonly applicationName: string; /** * Application resource type, deprecated parameter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#application_resource_type TsfApplication#application_resource_type} */ readonly applicationResourceType?: string; /** * Application runtime type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#application_runtime_type TsfApplication#application_runtime_type} */ readonly applicationRuntimeType?: string; /** * Application type: V for virtual machine, C for container, S for serverless. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#application_type TsfApplication#application_type} */ readonly applicationType: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#id TsfApplication#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; /** * Ignore creating image repository. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#ignore_create_image_repository TsfApplication#ignore_create_image_repository} */ readonly ignoreCreateImageRepository?: boolean | cdktf.IResolvable; /** * Application microservice type: M for service mesh, N for normal application, G for gateway application. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#microservice_type TsfApplication#microservice_type} */ readonly microserviceType: string; /** * ID of the dataset to be bound. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#program_id TsfApplication#program_id} */ readonly programId?: string; /** * N/A. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#program_id_list TsfApplication#program_id_list} */ readonly programIdList?: string[]; /** * service_config_list block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#service_config_list TsfApplication#service_config_list} */ readonly serviceConfigList?: TsfApplicationServiceConfigListStruct[] | cdktf.IResolvable; } export interface TsfApplicationServiceConfigListHealthCheck { /** * Health check path. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#path TsfApplication#path} */ readonly path?: string; } export declare function tsfApplicationServiceConfigListHealthCheckToTerraform(struct?: TsfApplicationServiceConfigListHealthCheckOutputReference | TsfApplicationServiceConfigListHealthCheck): any; export declare function tsfApplicationServiceConfigListHealthCheckToHclTerraform(struct?: TsfApplicationServiceConfigListHealthCheckOutputReference | TsfApplicationServiceConfigListHealthCheck): any; export declare class TsfApplicationServiceConfigListHealthCheckOutputReference 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(): TsfApplicationServiceConfigListHealthCheck | undefined; set internalValue(value: TsfApplicationServiceConfigListHealthCheck | undefined); private _path?; get path(): string; set path(value: string); resetPath(): void; get pathInput(): string; } export interface TsfApplicationServiceConfigListPorts { /** * Port protocol. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#protocol TsfApplication#protocol} */ readonly protocol: string; /** * Service port. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#target_port TsfApplication#target_port} */ readonly targetPort: number; } export declare function tsfApplicationServiceConfigListPortsToTerraform(struct?: TsfApplicationServiceConfigListPorts | cdktf.IResolvable): any; export declare function tsfApplicationServiceConfigListPortsToHclTerraform(struct?: TsfApplicationServiceConfigListPorts | cdktf.IResolvable): any; export declare class TsfApplicationServiceConfigListPortsOutputReference 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(): TsfApplicationServiceConfigListPorts | cdktf.IResolvable | undefined; set internalValue(value: TsfApplicationServiceConfigListPorts | cdktf.IResolvable | undefined); private _protocol?; get protocol(): string; set protocol(value: string); get protocolInput(): string; private _targetPort?; get targetPort(): number; set targetPort(value: number); get targetPortInput(): number; } export declare class TsfApplicationServiceConfigListPortsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TsfApplicationServiceConfigListPorts[] | 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): TsfApplicationServiceConfigListPortsOutputReference; } export interface TsfApplicationServiceConfigListStruct { /** * Service name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#name TsfApplication#name} */ readonly name: string; /** * health_check block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#health_check TsfApplication#health_check} */ readonly healthCheck?: TsfApplicationServiceConfigListHealthCheck; /** * ports block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#ports TsfApplication#ports} */ readonly ports: TsfApplicationServiceConfigListPorts[] | cdktf.IResolvable; } export declare function tsfApplicationServiceConfigListStructToTerraform(struct?: TsfApplicationServiceConfigListStruct | cdktf.IResolvable): any; export declare function tsfApplicationServiceConfigListStructToHclTerraform(struct?: TsfApplicationServiceConfigListStruct | cdktf.IResolvable): any; export declare class TsfApplicationServiceConfigListStructOutputReference 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(): TsfApplicationServiceConfigListStruct | cdktf.IResolvable | undefined; set internalValue(value: TsfApplicationServiceConfigListStruct | cdktf.IResolvable | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string; private _healthCheck; get healthCheck(): TsfApplicationServiceConfigListHealthCheckOutputReference; putHealthCheck(value: TsfApplicationServiceConfigListHealthCheck): void; resetHealthCheck(): void; get healthCheckInput(): TsfApplicationServiceConfigListHealthCheck; private _ports; get ports(): TsfApplicationServiceConfigListPortsList; putPorts(value: TsfApplicationServiceConfigListPorts[] | cdktf.IResolvable): void; get portsInput(): any; } export declare class TsfApplicationServiceConfigListStructList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TsfApplicationServiceConfigListStruct[] | 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): TsfApplicationServiceConfigListStructOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application tencentcloud_tsf_application} */ export declare class TsfApplication extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_tsf_application"; /** * Generates CDKTF code for importing a TsfApplication resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the TsfApplication to import * @param importFromId The id of the existing TsfApplication that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TsfApplication to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tsf_application tencentcloud_tsf_application} 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 TsfApplicationConfig */ constructor(scope: Construct, id: string, config: TsfApplicationConfig); private _applicationDesc?; get applicationDesc(): string; set applicationDesc(value: string); resetApplicationDesc(): void; get applicationDescInput(): string; private _applicationLogConfig?; get applicationLogConfig(): string; set applicationLogConfig(value: string); resetApplicationLogConfig(): void; get applicationLogConfigInput(): string; private _applicationName?; get applicationName(): string; set applicationName(value: string); get applicationNameInput(): string; private _applicationResourceType?; get applicationResourceType(): string; set applicationResourceType(value: string); resetApplicationResourceType(): void; get applicationResourceTypeInput(): string; private _applicationRuntimeType?; get applicationRuntimeType(): string; set applicationRuntimeType(value: string); resetApplicationRuntimeType(): void; get applicationRuntimeTypeInput(): string; private _applicationType?; get applicationType(): string; set applicationType(value: string); get applicationTypeInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _ignoreCreateImageRepository?; get ignoreCreateImageRepository(): boolean | cdktf.IResolvable; set ignoreCreateImageRepository(value: boolean | cdktf.IResolvable); resetIgnoreCreateImageRepository(): void; get ignoreCreateImageRepositoryInput(): any; private _microserviceType?; get microserviceType(): string; set microserviceType(value: string); get microserviceTypeInput(): string; private _programId?; get programId(): string; set programId(value: string); resetProgramId(): void; get programIdInput(): string; private _programIdList?; get programIdList(): string[]; set programIdList(value: string[]); resetProgramIdList(): void; get programIdListInput(): string[]; private _serviceConfigList; get serviceConfigList(): TsfApplicationServiceConfigListStructList; putServiceConfigList(value: TsfApplicationServiceConfigListStruct[] | cdktf.IResolvable): void; resetServiceConfigList(): void; get serviceConfigListInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }