import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TatCommandConfig extends cdktf.TerraformMetaArguments { /** * Command name. The name can be up to 60 bytes, and contain [a-z], [A-Z], [0-9] and [_-.]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#command_name TatCommand#command_name} */ readonly commandName: string; /** * Command type. `SHELL`, `POWERSHELL` and `BAT` are supported. The default value is `SHELL`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#command_type TatCommand#command_type} */ readonly commandType?: string; /** * Command content. The maximum length is 64 KB. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#content TatCommand#content} */ readonly content: string; /** * The default value of the custom parameter value when it is enabled. The field type is JSON encoded string. For example, {"varA": "222"}.`key` is the name of the custom parameter and value is the default value. Both `key` and `value` are strings.If no parameter value is provided in the `InvokeCommand` API, the default value is used.Up to 20 custom parameters are supported.The name of the custom parameter cannot exceed 64 characters and can contain [a-z], [A-Z], [0-9] and [-_]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#default_parameters TatCommand#default_parameters} */ readonly defaultParameters?: string; /** * Command description. The maximum length is 120 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#description TatCommand#description} */ readonly description?: string; /** * Whether to enable the custom parameter feature.This cannot be modified once created.Default value: `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#enable_parameter TatCommand#enable_parameter} */ readonly enableParameter?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#id TatCommand#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; /** * The COS bucket URL for uploading logs. The URL must start with `https`, such as `https://BucketName-123454321.cos.ap-beijing.myqcloud.com`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#output_cos_bucket_url TatCommand#output_cos_bucket_url} */ readonly outputCosBucketUrl?: string; /** * The COS bucket directory where the logs are saved. Check below for the rules of the directory name.1. It must be a combination of number, letters, and visible characters. Up to 60 characters are allowed.2. Use a slash (/) to create a subdirectory.3. Consecutive dots (.) and slashes (/) are not allowed. It can not start with a slash (/). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#output_cos_key_prefix TatCommand#output_cos_key_prefix} */ readonly outputCosKeyPrefix?: string; /** * Command timeout period. Default value: 60 seconds. Value range: [1, 86400]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#timeout TatCommand#timeout} */ readonly timeout?: number; /** * The username used to execute the command on the CVM or Lighthouse instance.The principle of least privilege is the best practice for permission management. We recommend you execute TAT commands as a general user. By default, the root user is used to execute commands on Linux and the System user is used on Windows. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#username TatCommand#username} */ readonly username?: string; /** * Command execution path. The default value is /root for `SHELL` commands and C:/Program Files/qcloudtat_agent/workdir for `POWERSHELL` commands. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#working_directory TatCommand#working_directory} */ readonly workingDirectory?: string; /** * tags block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#tags TatCommand#tags} */ readonly tags?: TatCommandTags[] | cdktf.IResolvable; } export interface TatCommandTags { /** * Tag key. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#key TatCommand#key} */ readonly key: string; /** * Tag value. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#value TatCommand#value} */ readonly value: string; } export declare function tatCommandTagsToTerraform(struct?: TatCommandTags | cdktf.IResolvable): any; export declare function tatCommandTagsToHclTerraform(struct?: TatCommandTags | cdktf.IResolvable): any; export declare class TatCommandTagsOutputReference 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(): TatCommandTags | cdktf.IResolvable | undefined; set internalValue(value: TatCommandTags | cdktf.IResolvable | undefined); private _key?; get key(): string; set key(value: string); get keyInput(): string; private _value?; get value(): string; set value(value: string); get valueInput(): string; } export declare class TatCommandTagsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TatCommandTags[] | 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): TatCommandTagsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command tencentcloud_tat_command} */ export declare class TatCommand extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_tat_command"; /** * Generates CDKTF code for importing a TatCommand 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 TatCommand to import * @param importFromId The id of the existing TatCommand that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tat_command#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TatCommand 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/tat_command tencentcloud_tat_command} 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 TatCommandConfig */ constructor(scope: Construct, id: string, config: TatCommandConfig); private _commandName?; get commandName(): string; set commandName(value: string); get commandNameInput(): string; private _commandType?; get commandType(): string; set commandType(value: string); resetCommandType(): void; get commandTypeInput(): string; private _content?; get content(): string; set content(value: string); get contentInput(): string; get createdBy(): any; get createdTime(): any; private _defaultParameters?; get defaultParameters(): string; set defaultParameters(value: string); resetDefaultParameters(): void; get defaultParametersInput(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _enableParameter?; get enableParameter(): boolean | cdktf.IResolvable; set enableParameter(value: boolean | cdktf.IResolvable); resetEnableParameter(): void; get enableParameterInput(): any; get formattedDescription(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _outputCosBucketUrl?; get outputCosBucketUrl(): string; set outputCosBucketUrl(value: string); resetOutputCosBucketUrl(): void; get outputCosBucketUrlInput(): string; private _outputCosKeyPrefix?; get outputCosKeyPrefix(): string; set outputCosKeyPrefix(value: string); resetOutputCosKeyPrefix(): void; get outputCosKeyPrefixInput(): string; private _timeout?; get timeout(): number; set timeout(value: number); resetTimeout(): void; get timeoutInput(): number; get updatedTime(): any; private _username?; get username(): string; set username(value: string); resetUsername(): void; get usernameInput(): string; private _workingDirectory?; get workingDirectory(): string; set workingDirectory(value: string); resetWorkingDirectory(): void; get workingDirectoryInput(): string; private _tags; get tags(): TatCommandTagsList; putTags(value: TatCommandTags[] | cdktf.IResolvable): void; resetTags(): void; get tagsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }