import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TeoDnsRecordConfig extends cdktf.TerraformMetaArguments { /** * DNS record content. fill in the corresponding content according to the type value. if the domain name is in chinese, korean, or japanese, it needs to be converted to punycode before input. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#content TeoDnsRecord#content} */ readonly content: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#id TeoDnsRecord#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; /** * DNS record resolution route. if not specified, the default is DEFAULT, which means the default resolution route and is effective in all regions. * * - resolution route configuration is only applicable when type (dns record type) is A, AAAA, or CNAME. * - resolution route configuration is only applicable to standard version and enterprise edition packages. for valid values, please refer to: [resolution routes and corresponding code enumeration](https://intl.cloud.tencent.com/document/product/1552/112542?from_cn_redirect=1). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#location TeoDnsRecord#location} */ readonly location?: string; /** * DNS record name. if the domain name is in chinese, korean, or japanese, it needs to be converted to punycode before input. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#name TeoDnsRecord#name} */ readonly name: string; /** * MX record priority, which takes effect only when type (dns record type) is MX. the smaller the value, the higher the priority. users can specify a value range of 0-50. the default value is 0 if not specified. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#priority TeoDnsRecord#priority} */ readonly priority?: number; /** * DNS record resolution status, the following values: * - enable: has taken effect; * - disable: has been disabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#status TeoDnsRecord#status} */ readonly status?: string; /** * Cache time. users can specify a value range of 60-86400. the smaller the value, the faster the modification records will take effect in all regions. default value: 300. unit: seconds. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#ttl TeoDnsRecord#ttl} */ readonly ttl?: number; /** * DNS record type. valid values are: * - A: points the domain name to an external ipv4 address, such as 8.8.8.8; * - AAAA: points the domain name to an external ipv6 address; * - MX: used for email servers. when there are multiple mx records, the lower the priority value, the higher the priority; * - CNAME: points the domain name to another domain name, which then resolves to the final ip address; * - TXT: identifies and describes the domain name, commonly used for domain verification and spf records (anti-spam); * - NS: if you need to delegate the subdomain to another dns service provider for resolution, you need to add an ns record. the root domain cannot add ns records; * - CAA: specifies the ca that can issue certificates for this site; * - SRV: identifies a server using a service, commonly used in microsoft's directory management. * Different record types, such as SRV and CAA records, have different requirements for host record names and record value formats. for detailed descriptions and format examples of each record type, please refer to: [introduction to dns record types](https://intl.cloud.tencent.com/document/product/1552/90453?from_cn_redirect=1#2f681022-91ab-4a9e-ac3d-0a6c454d954e). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#type TeoDnsRecord#type} */ readonly type: string; /** * DNS record weight. users can specify a value range of -1 to 100. a value of 0 means no resolution. if not specified, the default is -1, which means no weight is set. weight configuration is only applicable when type (dns record type) is A, AAAA, or CNAME. note: for the same subdomain, different dns records with the same resolution route should either all have weights set or none have weights set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#weight TeoDnsRecord#weight} */ readonly weight?: number; /** * Zone id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#zone_id TeoDnsRecord#zone_id} */ readonly zoneId: string; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record tencentcloud_teo_dns_record} */ export declare class TeoDnsRecord extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_teo_dns_record"; /** * Generates CDKTF code for importing a TeoDnsRecord 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 TeoDnsRecord to import * @param importFromId The id of the existing TeoDnsRecord that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/teo_dns_record#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TeoDnsRecord 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/teo_dns_record tencentcloud_teo_dns_record} 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 TeoDnsRecordConfig */ constructor(scope: Construct, id: string, config: TeoDnsRecordConfig); private _content?; get content(): string; set content(value: string); get contentInput(): string; get createdOn(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _location?; get location(): string; set location(value: string); resetLocation(): void; get locationInput(): string; get modifiedOn(): any; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _priority?; get priority(): number; set priority(value: number); resetPriority(): void; get priorityInput(): number; private _status?; get status(): string; set status(value: string); resetStatus(): void; get statusInput(): string; private _ttl?; get ttl(): number; set ttl(value: number); resetTtl(): void; get ttlInput(): number; private _type?; get type(): string; set type(value: string); get typeInput(): string; private _weight?; get weight(): number; set weight(value: number); resetWeight(): void; get weightInput(): number; private _zoneId?; get zoneId(): string; set zoneId(value: string); get zoneIdInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }