import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface AuditTrackConfig extends cdktf.TerraformMetaArguments { /** * Track interface type, optional:- `Read`: Read interface- `Write`: Write interface- `*`: All interface. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#action_type AuditTrack#action_type} */ readonly actionType: string; /** * Track interface name list:- when ResourceType is `*`, EventNames is must `["*"]`- when ResourceType is a single product, EventNames support all interface:`["*"]`- when ResourceType is a single product, EventNames support some interface, up to 10. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#event_names AuditTrack#event_names} */ readonly eventNames: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#id AuditTrack#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; /** * Track name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#name AuditTrack#name} */ readonly name: string; /** * Track product, optional:- `*`: All product- Single product, such as `cos`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#resource_type AuditTrack#resource_type} */ readonly resourceType: string; /** * Track status, optional:- `0`: Close- `1`: Open. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#status AuditTrack#status} */ readonly status: number; /** * Whether to enable the delivery of group member operation logs to the group management account or trusted service management account, optional:- `0`: Close- `1`: Open. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#track_for_all_members AuditTrack#track_for_all_members} */ readonly trackForAllMembers?: number; /** * storage block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage AuditTrack#storage} */ readonly storage: AuditTrackStorage; } export interface AuditTrackStorage { /** * Designated to store user ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage_account_id AuditTrack#storage_account_id} */ readonly storageAccountId?: string; /** * Designated to store user appid. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage_app_id AuditTrack#storage_app_id} */ readonly storageAppId?: string; /** * Track Storage name:- when StorageType is `cls`, StorageName is cls topicId- when StorageType is `cos`, StorageName is cos bucket name that does not contain `-APPID`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage_name AuditTrack#storage_name} */ readonly storageName: string; /** * Storage path prefix. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage_prefix AuditTrack#storage_prefix} */ readonly storagePrefix: string; /** * Storage region. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage_region AuditTrack#storage_region} */ readonly storageRegion: string; /** * Track Storage type, optional:- `cos`- `cls`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#storage_type AuditTrack#storage_type} */ readonly storageType: string; } export declare function auditTrackStorageToTerraform(struct?: AuditTrackStorageOutputReference | AuditTrackStorage): any; export declare function auditTrackStorageToHclTerraform(struct?: AuditTrackStorageOutputReference | AuditTrackStorage): any; export declare class AuditTrackStorageOutputReference 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(): AuditTrackStorage | undefined; set internalValue(value: AuditTrackStorage | undefined); private _storageAccountId?; get storageAccountId(): string; set storageAccountId(value: string); resetStorageAccountId(): void; get storageAccountIdInput(): string; private _storageAppId?; get storageAppId(): string; set storageAppId(value: string); resetStorageAppId(): void; get storageAppIdInput(): string; private _storageName?; get storageName(): string; set storageName(value: string); get storageNameInput(): string; private _storagePrefix?; get storagePrefix(): string; set storagePrefix(value: string); get storagePrefixInput(): string; private _storageRegion?; get storageRegion(): string; set storageRegion(value: string); get storageRegionInput(): string; private _storageType?; get storageType(): string; set storageType(value: string); get storageTypeInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track tencentcloud_audit_track} */ export declare class AuditTrack extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_audit_track"; /** * Generates CDKTF code for importing a AuditTrack 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 AuditTrack to import * @param importFromId The id of the existing AuditTrack that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/audit_track#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the AuditTrack 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/audit_track tencentcloud_audit_track} 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 AuditTrackConfig */ constructor(scope: Construct, id: string, config: AuditTrackConfig); private _actionType?; get actionType(): string; set actionType(value: string); get actionTypeInput(): string; get createTime(): any; private _eventNames?; get eventNames(): string[]; set eventNames(value: string[]); get eventNamesInput(): string[]; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _resourceType?; get resourceType(): string; set resourceType(value: string); get resourceTypeInput(): string; private _status?; get status(): number; set status(value: number); get statusInput(): number; private _trackForAllMembers?; get trackForAllMembers(): number; set trackForAllMembers(value: number); resetTrackForAllMembers(): void; get trackForAllMembersInput(): number; private _storage; get storage(): AuditTrackStorageOutputReference; putStorage(value: AuditTrackStorage): void; get storageInput(): AuditTrackStorage; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }