import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TcrImmutableTagRuleConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#id TcrImmutableTagRule#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; /** * namespace name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#namespace_name TcrImmutableTagRule#namespace_name} */ readonly namespaceName: string; /** * instance id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#registry_id TcrImmutableTagRule#registry_id} */ readonly registryId: string; /** * Tag description list. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#tags TcrImmutableTagRule#tags} */ readonly tags?: { [key: string]: string; }; /** * rule block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#rule TcrImmutableTagRule#rule} */ readonly rule: TcrImmutableTagRuleRule; } export interface TcrImmutableTagRuleRule { /** * disable rule. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#disabled TcrImmutableTagRule#disabled} */ readonly disabled?: boolean | cdktf.IResolvable; /** * repository decoration type:repoMatches or repoExcludes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#repository_decoration TcrImmutableTagRule#repository_decoration} */ readonly repositoryDecoration: string; /** * repository matching rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#repository_pattern TcrImmutableTagRule#repository_pattern} */ readonly repositoryPattern: string; /** * tag decoration type: matches or excludes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#tag_decoration TcrImmutableTagRule#tag_decoration} */ readonly tagDecoration: string; /** * tag matching rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#tag_pattern TcrImmutableTagRule#tag_pattern} */ readonly tagPattern: string; } export declare function tcrImmutableTagRuleRuleToTerraform(struct?: TcrImmutableTagRuleRuleOutputReference | TcrImmutableTagRuleRule): any; export declare function tcrImmutableTagRuleRuleToHclTerraform(struct?: TcrImmutableTagRuleRuleOutputReference | TcrImmutableTagRuleRule): any; export declare class TcrImmutableTagRuleRuleOutputReference 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(): TcrImmutableTagRuleRule | undefined; set internalValue(value: TcrImmutableTagRuleRule | undefined); private _disabled?; get disabled(): boolean | cdktf.IResolvable; set disabled(value: boolean | cdktf.IResolvable); resetDisabled(): void; get disabledInput(): any; get id(): any; get nsName(): any; private _repositoryDecoration?; get repositoryDecoration(): string; set repositoryDecoration(value: string); get repositoryDecorationInput(): string; private _repositoryPattern?; get repositoryPattern(): string; set repositoryPattern(value: string); get repositoryPatternInput(): string; private _tagDecoration?; get tagDecoration(): string; set tagDecoration(value: string); get tagDecorationInput(): string; private _tagPattern?; get tagPattern(): string; set tagPattern(value: string); get tagPatternInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule tencentcloud_tcr_immutable_tag_rule} */ export declare class TcrImmutableTagRule extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_tcr_immutable_tag_rule"; /** * Generates CDKTF code for importing a TcrImmutableTagRule 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 TcrImmutableTagRule to import * @param importFromId The id of the existing TcrImmutableTagRule that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/tcr_immutable_tag_rule#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TcrImmutableTagRule 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/tcr_immutable_tag_rule tencentcloud_tcr_immutable_tag_rule} 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 TcrImmutableTagRuleConfig */ constructor(scope: Construct, id: string, config: TcrImmutableTagRuleConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _namespaceName?; get namespaceName(): string; set namespaceName(value: string); get namespaceNameInput(): string; private _registryId?; get registryId(): string; set registryId(value: string); get registryIdInput(): string; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; }; private _rule; get rule(): TcrImmutableTagRuleRuleOutputReference; putRule(value: TcrImmutableTagRuleRule): void; get ruleInput(): TcrImmutableTagRuleRule; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }