import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
export interface ProviderAssumeRole {
    /**
     * The session name to use when making the AssumeRole call.
     */
    assumeRoleSessionName: pulumi.Input<string>;
    /**
     * The TRN of the role to assume.
     */
    assumeRoleTrn: pulumi.Input<string>;
    /**
     * The duration of the session when making the AssumeRole call. Its value ranges from 900 to 43200(seconds), and default is 3600 seconds.
     */
    durationSeconds: pulumi.Input<number>;
    /**
     * A more restrictive policy when making the AssumeRole call.
     */
    policy?: pulumi.Input<string>;
}
export declare namespace alb {
    interface AclAclEntry {
        /**
         * The description of the AclEntry.
         */
        description?: pulumi.Input<string>;
        /**
         * The content of the AclEntry.
         */
        entry: pulumi.Input<string>;
    }
    interface AlbEipBillingConfig {
        /**
         * The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
         */
        bandwidth: pulumi.Input<number>;
        /**
         * The billing type of the EIP which automatically assigned to the Alb. Valid values: `PostPaidByBandwidth`, `PostPaidByTraffic`.
         */
        eipBillingType: pulumi.Input<string>;
        /**
         * The ISP of the EIP which automatically associated to the Alb, the value can be `BGP`.
         */
        isp: pulumi.Input<string>;
    }
    interface AlbIpv6EipBillingConfig {
        /**
         * The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
         */
        bandwidth: pulumi.Input<number>;
        /**
         * The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: `PostPaidByBandwidth`, `PostPaidByTraffic`.
         */
        billingType: pulumi.Input<string>;
        /**
         * The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be `BGP`.
         */
        isp: pulumi.Input<string>;
    }
    interface AlbTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface AlbZoneMapping {
        /**
         * The IP address information of the Alb in this availability zone.
         */
        loadBalancerAddresses?: pulumi.Input<pulumi.Input<inputs.alb.AlbZoneMappingLoadBalancerAddress>[]>;
        /**
         * The subnet id of the Alb in this availability zone.
         */
        subnetId?: pulumi.Input<string>;
        /**
         * The availability zone id of the Alb.
         */
        zoneId?: pulumi.Input<string>;
    }
    interface AlbZoneMappingLoadBalancerAddress {
        /**
         * The Eip address of the Alb in this availability zone.
         */
        eipAddress?: pulumi.Input<string>;
        /**
         * The Eip id of alb instance in this availability zone.
         */
        eipId?: pulumi.Input<string>;
        /**
         * The Eni address of the Alb in this availability zone.
         */
        eniAddress?: pulumi.Input<string>;
        /**
         * The Eni id of the Alb in this availability zone.
         */
        eniId?: pulumi.Input<string>;
        /**
         * The Eni Ipv6 address of the Alb in this availability zone.
         */
        eniIpv6Address?: pulumi.Input<string>;
        /**
         * The Ipv6 Eip id of alb instance in this availability zone.
         */
        ipv6EipId?: pulumi.Input<string>;
    }
    interface AlbsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface AlbsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetAlbsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetAlbsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RuleRedirectConfig {
        /**
         * The redirect domain, only support exact domain name.
         */
        redirectDomain?: pulumi.Input<string>;
        /**
         * The redirect http code, support 301(default), 302, 307, 308.
         */
        redirectHttpCode?: pulumi.Input<string>;
        /**
         * The redirect port.
         */
        redirectPort?: pulumi.Input<string>;
        /**
         * The redirect protocol, support HTTP, HTTPS(default).
         */
        redirectProtocol?: pulumi.Input<string>;
        /**
         * The redirect URI.
         */
        redirectUri?: pulumi.Input<string>;
    }
    interface RuleRewriteConfig {
        /**
         * Rewrite path.
         */
        rewritePath: pulumi.Input<string>;
    }
    interface ServerGroupHealthCheck {
        /**
         * The domain of health check.
         */
        domain?: pulumi.Input<string>;
        /**
         * The enable status of health check function. Valid values: `on`, `off`. Default is `on`.
         */
        enabled?: pulumi.Input<string>;
        /**
         * The healthy threshold of health check. Valid value range in 2~10. Default is 3.
         */
        healthyThreshold?: pulumi.Input<number>;
        /**
         * The normal http status code of health check, the value can be `http2xx` or `http3xx` or `http4xx` or `http5xx`.
         */
        httpCode?: pulumi.Input<string>;
        /**
         * The http version of health check. Valid values: `HTTP1.0`, `HTTP1.1`. Default is `HTTP1.0`.
         */
        httpVersion?: pulumi.Input<string>;
        /**
         * The interval executing health check. Unit: second. Valid value range in 1~300. Default is 2.
         */
        interval?: pulumi.Input<number>;
        /**
         * The method of health check. Valid values: `GET` or `HEAD`. Default is `HEAD`.
         */
        method?: pulumi.Input<string>;
        /**
         * The response timeout of health check. Unit: second. Valid value range in 1~60. Default is 2.
         */
        timeout?: pulumi.Input<number>;
        /**
         * The unhealthy threshold of health check. Valid value range in 2~10. Default is 3.
         */
        unhealthyThreshold?: pulumi.Input<number>;
        /**
         * The uri of health check.
         */
        uri?: pulumi.Input<string>;
    }
    interface ServerGroupStickySessionConfig {
        /**
         * The cookie name of the sticky session. This field is required when the value of the `stickySessionType` is `server`.
         */
        cookie?: pulumi.Input<string>;
        /**
         * The cookie timeout of the sticky session. Unit: second. Valid value range in 1~86400. Default is 1000. This field is required when the value of the `stickySessionType` is `insert`.
         */
        cookieTimeout?: pulumi.Input<number>;
        /**
         * The enable status of sticky session. Valid values: `on`, `off`. Default is `off`.
         */
        stickySessionEnabled?: pulumi.Input<string>;
        /**
         * The cookie handle type of the sticky session. Valid values: `insert`, `server`. Default is `insert`. This field is required when the value of the `stickySessionEnabled` is `on`.
         */
        stickySessionType?: pulumi.Input<string>;
    }
}
export declare namespace autoscaling {
    interface ScalingConfigurationTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ScalingConfigurationVolume {
        /**
         * The delete with instance flag of volume. Valid values: true, false. Default value: true.
         */
        deleteWithInstance?: pulumi.Input<boolean>;
        /**
         * The size of volume. System disk value range: 10 - 500. The value range of the data disk: 10 - 8192.
         */
        size: pulumi.Input<number>;
        /**
         * The type of volume.
         */
        volumeType: pulumi.Input<string>;
    }
    interface ScalingGroupLaunchTemplateOverride {
        /**
         * The instance type.
         */
        instanceType: pulumi.Input<string>;
    }
    interface ScalingGroupServerGroupAttribute {
        /**
         * The load balancer id.
         */
        loadBalancerId?: pulumi.Input<string>;
        /**
         * The port receiving request of the server group. Value range: 1 ~ 65535.
         */
        port: pulumi.Input<number>;
        /**
         * The id of the server group.
         */
        serverGroupId: pulumi.Input<string>;
        /**
         * The weight of the instance. Value range: 0 ~ 100.
         */
        weight: pulumi.Input<number>;
    }
    interface ScalingGroupTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ScalingLifecycleHookLifecycleCommand {
        /**
         * Batch job command ID, which indicates the batch job command to be executed after triggering the lifecycle hook and installed in the instance.
         */
        commandId: pulumi.Input<string>;
        /**
         * Parameters and parameter values in batch job commands.
         * The number of parameters ranges from 0 to 60.
         */
        parameters?: pulumi.Input<string>;
    }
}
export declare namespace bandwidth_package {
    interface BandwidthPackageTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface BandwidthPackagesTagFilter {
        /**
         * The key of the tag.
         */
        key: string;
        /**
         * The values of the tag.
         */
        values: string[];
    }
    interface BandwidthPackagesTagFilterArgs {
        /**
         * The key of the tag.
         */
        key: pulumi.Input<string>;
        /**
         * The values of the tag.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface GetBandwidthPackagesTagFilter {
        /**
         * The key of the tag.
         */
        key: string;
        /**
         * The values of the tag.
         */
        values: string[];
    }
    interface GetBandwidthPackagesTagFilterArgs {
        /**
         * The key of the tag.
         */
        key: pulumi.Input<string>;
        /**
         * The values of the tag.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
}
export declare namespace bioos {
    interface ClusterSharedConfig {
        /**
         * Whether to enable a shared cluster. This value must be `true`.
         */
        enable: pulumi.Input<boolean>;
    }
    interface ClusterVkeConfig {
        /**
         * The id of the vke cluster.
         */
        clusterId: pulumi.Input<string>;
        /**
         * The name of the StorageClass that the vke cluster has installed.
         */
        storageClass: pulumi.Input<string>;
    }
}
export declare namespace cdn {
    interface CdnDomainSharedCname {
        /**
         * Assign a CNAME to the accelerated domain.
         */
        cname: pulumi.Input<string>;
        /**
         * Specify whether to enable shared CNAME.
         */
        switch: pulumi.Input<boolean>;
    }
    interface CdnDomainTag {
        /**
         * The key of the tag.
         */
        key: pulumi.Input<string>;
        /**
         * The value of the tag.
         */
        value: pulumi.Input<string>;
    }
    interface SharedConfigAllowIpAccessRule {
        /**
         * The entries in this list are an array of IP addresses and CIDR network segments. The total number of entries cannot exceed 3,000. The IP addresses and segments can be in IPv4 and IPv6 format. Duplicate entries in the list will be removed and will not count towards the limit.
         */
        rules: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface SharedConfigAllowRefererAccessRule {
        /**
         * Indicates whether an empty Referer header, or a request without a Referer header, is not allowed. Default is false.
         */
        allowEmpty?: pulumi.Input<boolean>;
        /**
         * The content indicating the Referer whitelist.
         */
        commonType: pulumi.Input<inputs.cdn.SharedConfigAllowRefererAccessRuleCommonType>;
    }
    interface SharedConfigAllowRefererAccessRuleCommonType {
        /**
         * This list is case-sensitive when matching requests. Default is true.
         */
        ignoreCase?: pulumi.Input<boolean>;
        /**
         * The entries in this list are an array of IP addresses and CIDR network segments. The total number of entries cannot exceed 3,000. The IP addresses and segments can be in IPv4 and IPv6 format. Duplicate entries in the list will be removed and will not count towards the limit.
         */
        rules: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface SharedConfigCommonMatchList {
        /**
         * The content indicating the Referer blacklist.
         */
        commonType: pulumi.Input<inputs.cdn.SharedConfigCommonMatchListCommonType>;
    }
    interface SharedConfigCommonMatchListCommonType {
        /**
         * This list is case-sensitive when matching requests. Default is true.
         */
        ignoreCase?: pulumi.Input<boolean>;
        /**
         * The entries in this list are an array of IP addresses and CIDR network segments. The total number of entries cannot exceed 3,000. The IP addresses and segments can be in IPv4 and IPv6 format. Duplicate entries in the list will be removed and will not count towards the limit.
         */
        rules: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface SharedConfigDenyIpAccessRule {
        /**
         * The entries in this list are an array of IP addresses and CIDR network segments. The total number of entries cannot exceed 3,000. The IP addresses and segments can be in IPv4 and IPv6 format. Duplicate entries in the list will be removed and will not count towards the limit.
         */
        rules: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface SharedConfigDenyRefererAccessRule {
        /**
         * Indicates whether an empty Referer header, or a request without a Referer header, is not allowed. Default is false.
         */
        allowEmpty?: pulumi.Input<boolean>;
        /**
         * The content indicating the Referer blacklist.
         */
        commonType: pulumi.Input<inputs.cdn.SharedConfigDenyRefererAccessRuleCommonType>;
    }
    interface SharedConfigDenyRefererAccessRuleCommonType {
        /**
         * This list is case-sensitive when matching requests. Default is true.
         */
        ignoreCase?: pulumi.Input<boolean>;
        /**
         * The entries in this list are an array of IP addresses and CIDR network segments. The total number of entries cannot exceed 3,000. The IP addresses and segments can be in IPv4 and IPv6 format. Duplicate entries in the list will be removed and will not count towards the limit.
         */
        rules: pulumi.Input<pulumi.Input<string>[]>;
    }
}
export declare namespace cen {
    interface BandwidthPackageTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface BandwidthPackagesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface BandwidthPackagesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface CenTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface CensTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface CensTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetBandwidthPackagesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetBandwidthPackagesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetCensTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetCensTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ServiceRouteEntryPublishToInstance {
        /**
         * Cloud service access routes need to publish the network instance ID.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * The region where the cloud service access route needs to be published.
         */
        instanceRegionId?: pulumi.Input<string>;
        /**
         * The network instance type that needs to be published for cloud service access routes. The values are as follows: `VPC`, `DCGW`.
         */
        instanceType?: pulumi.Input<string>;
    }
}
export declare namespace clb {
    interface AclAclEntry {
        /**
         * The description of the AclEntry.
         */
        description?: pulumi.Input<string>;
        /**
         * The content of the AclEntry.
         */
        entry: pulumi.Input<string>;
    }
    interface CertificateTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface CertificatesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface CertificatesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ClbEipBillingConfig {
        /**
         * The peek bandwidth of the EIP which automatically assigned to CLB.
         */
        bandwidth?: pulumi.Input<number>;
        /**
         * The billing type of the EIP which automatically assigned to CLB. And optional choice contains `PostPaidByBandwidth` or `PostPaidByTraffic` or `PrePaid`.When creating a `PrePaid` public CLB, this field must be specified as `PrePaid` simultaneously.When the LoadBalancerBillingType changes from `PostPaid` to `PrePaid`, please manually modify the value of this field to `PrePaid` simultaneously.
         */
        eipBillingType: pulumi.Input<string>;
        /**
         * The ISP of the EIP which automatically associated to CLB, the value can be `BGP` or `ChinaMobile` or `ChinaUnicom` or `ChinaTelecom` or `SingleLine_BGP` or `Static_BGP` or `Fusion_BGP`.
         */
        isp: pulumi.Input<string>;
    }
    interface ClbTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ClbsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface ClbsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetCertificatesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetCertificatesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetClbsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetClbsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ListenerHealthCheck {
        /**
         * The domain of health check.
         */
        domain?: pulumi.Input<string>;
        /**
         * The enable status of health check function. Optional choice contains `on`, `off`.
         */
        enabled?: pulumi.Input<string>;
        /**
         * The healthy threshold of health check, default 3, range in 2~10.
         */
        healthyThreshold?: pulumi.Input<number>;
        /**
         * The normal http status code of health check, the value can be `http2xx` or `http3xx` or `http4xx` or `http5xx`.
         */
        httpCode?: pulumi.Input<string>;
        /**
         * The interval executing health check, default 2, range in 1~300.
         */
        interval?: pulumi.Input<number>;
        /**
         * The method of health check, the value can be `GET` or `HEAD`.
         */
        method?: pulumi.Input<string>;
        /**
         * The response timeout of health check, default 2, range in 1~60..
         */
        timeout?: pulumi.Input<number>;
        /**
         * The UDP expect of health check. This field must be specified simultaneously with field `udpRequest`.
         */
        udpExpect?: pulumi.Input<string>;
        /**
         * The UDP request of health check. This field must be specified simultaneously with field `udpExpect`.
         */
        udpRequest?: pulumi.Input<string>;
        /**
         * The unhealthy threshold of health check, default 3, range in 2~10.
         */
        unHealthyThreshold?: pulumi.Input<number>;
        /**
         * The uri of health check.
         */
        uri?: pulumi.Input<string>;
    }
}
export declare namespace cloud_firewall {
    interface CfwDnsControlPolicySource {
        /**
         * The region of the source vpc.
         */
        region: pulumi.Input<string>;
        /**
         * The id of the source vpc.
         */
        vpcId: pulumi.Input<string>;
    }
}
export declare namespace cloud_identity {
    interface GroupMember {
        /**
         * The description of the cloud identity group.
         */
        description?: pulumi.Input<string>;
        /**
         * The display name of the cloud identity group.
         */
        displayName?: pulumi.Input<string>;
        /**
         * The email of the cloud identity user.
         */
        email?: pulumi.Input<string>;
        /**
         * The identity type of the cloud identity user.
         */
        identityType?: pulumi.Input<string>;
        /**
         * The join time of the cloud identity user.
         */
        joinTime?: pulumi.Input<string>;
        /**
         * The phone of the cloud identity user.
         */
        phone?: pulumi.Input<string>;
        /**
         * The source of the cloud identity group.
         */
        source?: pulumi.Input<string>;
        /**
         * The id of the cloud identity user.
         */
        userId?: pulumi.Input<string>;
        /**
         * The name of the cloud identity user.
         */
        userName?: pulumi.Input<string>;
    }
    interface PermissionSetPermissionPolicy {
        /**
         * The document of the cloud identity permission set inline policy. When the `permissionPolicyType` is `Inline`, this field must be specified.
         */
        inlinePolicyDocument?: pulumi.Input<string>;
        /**
         * The name of the cloud identity permission set system policy. When the `permissionPolicyType` is `System`, this field must be specified.
         */
        permissionPolicyName?: pulumi.Input<string>;
        /**
         * The type of the cloud identity permission set policy. Valid values: `System`, `Inline`.
         */
        permissionPolicyType: pulumi.Input<string>;
    }
}
export declare namespace cloud_monitor {
    interface EventRuleEffectiveTime {
        /**
         * End time for rule activation.
         */
        endTime: pulumi.Input<string>;
        /**
         * Start time for rule activation.
         */
        startTime: pulumi.Input<string>;
    }
    interface EventRuleFilterPattern {
        /**
         * Event source corresponding to pattern matching.
         */
        source: pulumi.Input<string>;
        /**
         * The list of corresponding event types in pattern matching, currently set to match any.
         */
        types: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface EventRuleMessageQueue {
        /**
         * The kafka instance id.
         */
        instanceId: pulumi.Input<string>;
        /**
         * The region.
         */
        region: pulumi.Input<string>;
        /**
         * The topic name.
         */
        topic: pulumi.Input<string>;
        /**
         * The message queue type, only support kafka now.
         */
        type: pulumi.Input<string>;
        /**
         * The vpc id.
         */
        vpcId: pulumi.Input<string>;
    }
    interface EventRuleTlsTarget {
        /**
         * The project id.
         */
        projectId: pulumi.Input<string>;
        /**
         * The project name.
         */
        projectName: pulumi.Input<string>;
        /**
         * The Chinese region name.
         */
        regionNameCn: pulumi.Input<string>;
        /**
         * The English region name.
         */
        regionNameEn: pulumi.Input<string>;
        /**
         * The topic id.
         */
        topicId: pulumi.Input<string>;
    }
    interface RuleCondition {
        /**
         * The comparison operation of the cloud monitor rule. Valid values: `>`, `>=`, `<`, `<=`, `!=`, `=`.
         */
        comparisonOperator: pulumi.Input<string>;
        /**
         * The metric name of the cloud monitor rule.
         */
        metricName: pulumi.Input<string>;
        /**
         * The metric unit of the cloud monitor rule.
         */
        metricUnit: pulumi.Input<string>;
        /**
         * The period of the cloud monitor rule.
         */
        period?: pulumi.Input<string>;
        /**
         * The statistics of the cloud monitor rule. Valid values: `avg`, `max`, `min`.
         */
        statistics: pulumi.Input<string>;
        /**
         * The threshold of the cloud monitor rule.
         */
        threshold: pulumi.Input<string>;
    }
    interface RuleOriginalDimension {
        /**
         * The key of the dimension.
         */
        key: pulumi.Input<string>;
        /**
         * The value of the dimension.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface RuleRecoveryNotify {
        /**
         * Whether to enable the recovery notify function.
         */
        enable?: pulumi.Input<boolean>;
    }
}
export declare namespace cloudfs {
}
export declare namespace config {
}
export declare namespace cr {
    interface EndpointAclPolicy {
        /**
         * The description of the acl policy.
         */
        description?: pulumi.Input<string>;
        /**
         * The ip of the acl policy.
         */
        entry?: pulumi.Input<string>;
    }
    interface GetRegistriesResourceTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        values: string[];
    }
    interface GetRegistriesResourceTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface GetRegistriesStatus {
        /**
         * The condition of registry.
         */
        condition?: string;
        /**
         * The phase of status.
         */
        phase?: string;
    }
    interface GetRegistriesStatusArgs {
        /**
         * The condition of registry.
         */
        condition?: pulumi.Input<string>;
        /**
         * The phase of status.
         */
        phase?: pulumi.Input<string>;
    }
    interface RegistriesResourceTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        values: string[];
    }
    interface RegistriesResourceTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface RegistriesStatus {
        /**
         * The condition of registry.
         */
        condition?: string;
        /**
         * The phase of status.
         */
        phase?: string;
    }
    interface RegistriesStatusArgs {
        /**
         * The condition of registry.
         */
        condition?: pulumi.Input<string>;
        /**
         * The phase of status.
         */
        phase?: pulumi.Input<string>;
    }
    interface RegistryDomain {
        /**
         * The domain of registry.
         */
        domain?: pulumi.Input<string>;
        /**
         * The type of registry.
         */
        type?: pulumi.Input<string>;
    }
    interface RegistryResourceTag {
        /**
         * The Key of Tags.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value?: pulumi.Input<string>;
    }
    interface RegistryStatus {
        /**
         * The condition of registry.
         */
        conditions?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The phase status of registry.
         */
        phase?: pulumi.Input<string>;
    }
    interface StateStatus {
        /**
         * The condition of instance.
         */
        conditions?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The phase status of instance.
         */
        phase?: pulumi.Input<string>;
    }
    interface TagChartAttribute {
        /**
         * The Helm version.
         */
        apiVersion?: pulumi.Input<string>;
        /**
         * The name of OCI product.
         */
        name?: pulumi.Input<string>;
        /**
         * The Helm Chart version.
         */
        version?: pulumi.Input<string>;
    }
    interface TagImageAttribute {
        /**
         * The image architecture.
         */
        architecture?: pulumi.Input<string>;
        /**
         * The image author.
         */
        author?: pulumi.Input<string>;
        /**
         * The digest of image.
         */
        digest?: pulumi.Input<string>;
        /**
         * The iamge os.
         */
        os?: pulumi.Input<string>;
    }
    interface VpcEndpointVpc {
        /**
         * The id of the account. When you need to expose the Enterprise Edition instance to a VPC under another primary account, you need to specify the ID of the primary account to which the VPC belongs.
         */
        accountId?: pulumi.Input<number>;
        /**
         * The id of the subnet. If not specified, the subnet with the most remaining IPs under the VPC will be automatically selected.
         */
        subnetId?: pulumi.Input<string>;
        /**
         * The id of the vpc.
         */
        vpcId?: pulumi.Input<string>;
    }
}
export declare namespace direct_connect {
    interface ConnectionTag {
        /**
         * The tag key.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value.
         */
        value?: pulumi.Input<string>;
    }
    interface ConnectionsTagFilter {
        /**
         * The tag key of cloud resource instance.
         */
        key?: string;
        /**
         * The tag value of cloud resource instance.
         */
        value?: string;
    }
    interface ConnectionsTagFilterArgs {
        /**
         * The tag key of cloud resource instance.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value of cloud resource instance.
         */
        value?: pulumi.Input<string>;
    }
    interface GatewayTag {
        /**
         * The tag key.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value.
         */
        value?: pulumi.Input<string>;
    }
    interface GatewaysTagFilter {
        /**
         * The tag key of cloud resource instance.
         */
        key?: string;
        /**
         * The tag value of cloud resource instance.
         */
        value?: string;
    }
    interface GatewaysTagFilterArgs {
        /**
         * The tag key of cloud resource instance.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value of cloud resource instance.
         */
        value?: pulumi.Input<string>;
    }
    interface GetConnectionsTagFilter {
        /**
         * The tag key of cloud resource instance.
         */
        key?: string;
        /**
         * The tag value of cloud resource instance.
         */
        value?: string;
    }
    interface GetConnectionsTagFilterArgs {
        /**
         * The tag key of cloud resource instance.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value of cloud resource instance.
         */
        value?: pulumi.Input<string>;
    }
    interface GetGatewaysTagFilter {
        /**
         * The tag key of cloud resource instance.
         */
        key?: string;
        /**
         * The tag value of cloud resource instance.
         */
        value?: string;
    }
    interface GetGatewaysTagFilterArgs {
        /**
         * The tag key of cloud resource instance.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value of cloud resource instance.
         */
        value?: pulumi.Input<string>;
    }
    interface GetVirtualInterfacesTagFilter {
        /**
         * The tag key of cloud resource instance.
         */
        key?: string;
        /**
         * The tag value of cloud resource instance.
         */
        value?: string;
    }
    interface GetVirtualInterfacesTagFilterArgs {
        /**
         * The tag key of cloud resource instance.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value of cloud resource instance.
         */
        value?: pulumi.Input<string>;
    }
    interface VirtualInterfaceTag {
        /**
         * The tag key.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value.
         */
        value?: pulumi.Input<string>;
    }
    interface VirtualInterfacesTagFilter {
        /**
         * The tag key of cloud resource instance.
         */
        key?: string;
        /**
         * The tag value of cloud resource instance.
         */
        value?: string;
    }
    interface VirtualInterfacesTagFilterArgs {
        /**
         * The tag key of cloud resource instance.
         */
        key?: pulumi.Input<string>;
        /**
         * The tag value of cloud resource instance.
         */
        value?: pulumi.Input<string>;
    }
}
export declare namespace dns {
    interface GetZonesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        values: string[];
    }
    interface GetZonesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ZoneTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ZonesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        values: string[];
    }
    interface ZonesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
}
export declare namespace ebs {
    interface AutoSnapshotPoliciesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface AutoSnapshotPoliciesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface AutoSnapshotPolicyTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetAutoSnapshotPoliciesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetAutoSnapshotPoliciesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetSnapshotsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetSnapshotsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetVolumesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetVolumesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SnapshotGroupTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SnapshotTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SnapshotsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface SnapshotsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VolumeTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VolumesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface VolumesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace ecs {
    interface GetImagesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetImagesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ImageImportTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ImageTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ImagesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface ImagesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceCpuOptions {
        /**
         * The number of subnuma in socket, only support for ebm. `1` indicates disabling SNC/NPS function. When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
         */
        numaPerSocket?: pulumi.Input<number>;
        /**
         * The per core of threads, only support for ebm. `1` indicates disabling hyper threading function.
         */
        threadsPerCore?: pulumi.Input<number>;
    }
    interface InstanceDataVolume {
        /**
         * The delete with instance flag of volume.
         */
        deleteWithInstance?: pulumi.Input<boolean>;
        /**
         * The size of volume. The value range of the data volume size is ESSD_PL0: 10~32768, ESSD_FlexPL: 10~32768, PTSSD: 20~8192.
         */
        size: pulumi.Input<number>;
        /**
         * The type of volume, the value is `PTSSD` or `ESSD_PL0` or `ESSD_PL1` or `ESSD_PL2` or `ESSD_FlexPL`.
         */
        volumeType: pulumi.Input<string>;
    }
    interface InstanceEipAddress {
        /**
         * The peek bandwidth of the EIP. The value range in 1~500 for PostPaidByBandwidth, and 1~200 for PostPaidByTraffic. Default is 1.
         */
        bandwidthMbps?: pulumi.Input<number>;
        /**
         * The id of the bandwidth package, indicates that the public IP address will be added to the bandwidth package.
         */
        bandwidthPackageId?: pulumi.Input<string>;
        /**
         * The billing type of the EIP Address. Valid values: `PayByBandwidth`, `PayByTraffic`. Default is `PayByBandwidth`.
         */
        chargeType?: pulumi.Input<string>;
        /**
         * The ISP of the EIP. Valid values: `BGP`, `ChinaMobile`, `ChinaUnicom`, `ChinaTelecom`, `SingleLine_BGP`, `Static_BGP`.
         */
        isp?: pulumi.Input<string>;
    }
    interface InstanceGpuDevice {
        /**
         * The Count of GPU device.
         */
        count?: pulumi.Input<number>;
        /**
         * The Encrypted Memory Size of GPU device.
         */
        encryptedMemorySize?: pulumi.Input<number>;
        /**
         * The memory size of ECS instance.
         */
        memorySize?: pulumi.Input<number>;
        /**
         * The Product Name of GPU device.
         */
        productName?: pulumi.Input<string>;
    }
    interface InstanceSecondaryNetworkInterface {
        /**
         * The private ip address of secondary networkInterface.
         */
        primaryIpAddress?: pulumi.Input<string>;
        /**
         * The security group ID set of secondary networkInterface.
         */
        securityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The subnet ID of secondary networkInterface.
         */
        subnetId: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface LaunchTemplateNetworkInterface {
        /**
         * The security group ID associated with the NIC.
         */
        securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The private network subnet ID of the instance, when creating the instance, supports binding the secondary NIC at the same time.
         */
        subnetId?: pulumi.Input<string>;
    }
    interface LaunchTemplateVolume {
        /**
         * The delete with instance flag of volume. Valid values: true, false. Default value: true.
         */
        deleteWithInstance?: pulumi.Input<boolean>;
        /**
         * The size of volume.
         */
        size?: pulumi.Input<number>;
        /**
         * The type of volume.
         */
        volumeType?: pulumi.Input<string>;
    }
}
export declare namespace eip {
    interface AddressTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface AddressesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface AddressesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetAddressesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetAddressesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace escloud {
    interface InstanceInstanceConfiguration {
        /**
         * The password of administrator account. When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
         */
        adminPassword: pulumi.Input<string>;
        /**
         * The name of administrator account(should be admin).
         */
        adminUserName: pulumi.Input<string>;
        /**
         * The charge type of ESCloud instance, the value can be PostPaid or PrePaid.
         */
        chargeType: pulumi.Input<string>;
        /**
         * Configuration code used for billing.
         */
        configurationCode: pulumi.Input<string>;
        /**
         * Whether Https access is enabled.
         */
        enableHttps: pulumi.Input<boolean>;
        /**
         * Whether the Master node is independent.
         */
        enablePureMaster: pulumi.Input<boolean>;
        /**
         * Whether to force restart when changes are made. If true, it means that the cluster will be forced to restart without paying attention to instance availability. Works only on modified the nodeSpecsAssigns field.
         */
        forceRestartAfterScale?: pulumi.Input<boolean>;
        /**
         * The name of ESCloud instance.
         */
        instanceName?: pulumi.Input<string>;
        /**
         * The maintainable date for the instance. Works only on modified scenes.
         */
        maintenanceDays?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The maintainable time period for the instance. Works only on modified scenes.
         */
        maintenanceTime?: pulumi.Input<string>;
        /**
         * The number and configuration of various ESCloud instance node. Kibana NodeSpecsAssign should not be modified.
         */
        nodeSpecsAssigns: pulumi.Input<pulumi.Input<inputs.escloud.InstanceInstanceConfigurationNodeSpecsAssign>[]>;
        /**
         * The project name  to which the ESCloud instance belongs.
         */
        projectName?: pulumi.Input<string>;
        /**
         * The region ID of ESCloud instance.
         */
        regionId?: pulumi.Input<string>;
        /**
         * The ID of subnet, the subnet must belong to the AZ selected.
         */
        subnetId: pulumi.Input<string>;
        /**
         * The version of ESCloud instance, the value is V6_7 or V7_10.
         */
        version: pulumi.Input<string>;
        /**
         * The available zone ID of ESCloud instance.
         */
        zoneId?: pulumi.Input<string>;
        /**
         * The zone count of the ESCloud instance used.
         */
        zoneNumber: pulumi.Input<number>;
    }
    interface InstanceInstanceConfigurationNodeSpecsAssign {
        /**
         * The number of node.
         */
        number: pulumi.Input<number>;
        /**
         * The name of compute resource spec, the value is `kibana.x2.small` or `es.x4.medium` or `es.x4.large` or `es.x4.xlarge` or `es.x2.2xlarge` or `es.x4.2xlarge` or `es.x2.3xlarge`.
         */
        resourceSpecName: pulumi.Input<string>;
        /**
         * The size of storage. Kibana NodeSpecsAssign should not specify this field.
         */
        storageSize?: pulumi.Input<number>;
        /**
         * The name of storage spec. Kibana NodeSpecsAssign should not specify this field.
         */
        storageSpecName?: pulumi.Input<string>;
        /**
         * The type of node, the value is `Master` or `Hot` or `Kibana`.
         */
        type: pulumi.Input<string>;
    }
}
export declare namespace escloud_v2 {
    interface EscloudInstanceV2NetworkSpec {
        /**
         * The bandwidth of the eip. Unit: Mbps.
         */
        bandwidth: pulumi.Input<number>;
        /**
         * Whether the eip is opened.
         */
        isOpen: pulumi.Input<boolean>;
        /**
         * The spec name of public network.
         */
        specName: pulumi.Input<string>;
        /**
         * The type of public network, valid values: `Elasticsearch`, `Kibana`.
         */
        type: pulumi.Input<string>;
    }
    interface EscloudInstanceV2NodeSpecsAssign {
        /**
         * The extra performance of FlexPL storage spec.
         */
        extraPerformance?: pulumi.Input<inputs.escloud_v2.EscloudInstanceV2NodeSpecsAssignExtraPerformance>;
        /**
         * The number of node.
         */
        number: pulumi.Input<number>;
        /**
         * The name of compute resource spec.
         */
        resourceSpecName: pulumi.Input<string>;
        /**
         * The size of storage. Unit: GiB. the adjustment step size is 10GiB. Default is 100 GiB. Kibana NodeSpecsAssign should specify this field to 0.
         */
        storageSize: pulumi.Input<number>;
        /**
         * The name of storage spec. Kibana NodeSpecsAssign should specify this field to ``.
         */
        storageSpecName: pulumi.Input<string>;
        /**
         * The type of node, valid values: `Master`, `Hot`, `Cold`, `Warm`, `Kibana`, `Coordinator`.
         */
        type: pulumi.Input<string>;
    }
    interface EscloudInstanceV2NodeSpecsAssignExtraPerformance {
        /**
         * When your data node chooses to use FlexPL storage type and the storage specification configuration is 500GiB or above, it supports purchasing bandwidth packages to increase disk bandwidth.
         * The unit is MiB, and the adjustment step size is 10MiB.
         */
        throughput: pulumi.Input<number>;
    }
    interface EscloudInstanceV2Tag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface EscloudInstancesV2Tag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        values: string[];
    }
    interface EscloudInstancesV2TagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface GetEscloudInstancesV2Tag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        values: string[];
    }
    interface GetEscloudInstancesV2TagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        values: pulumi.Input<pulumi.Input<string>[]>;
    }
}
export declare namespace financial_relation {
}
export declare namespace iam {
}
export declare namespace kafka {
    interface GetInstancesTag {
        /**
         * The key of tag.
         */
        key: string;
        /**
         * The value of tag.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The key of tag.
         */
        key: pulumi.Input<string>;
        /**
         * The value of tag.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceParameter {
        /**
         * Parameter name.
         */
        parameterName: pulumi.Input<string>;
        /**
         * Parameter value.
         */
        parameterValue: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The key of tag.
         */
        key: string;
        /**
         * The value of tag.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The key of tag.
         */
        key: pulumi.Input<string>;
        /**
         * The value of tag.
         */
        value: pulumi.Input<string>;
    }
    interface TopicAccessPolicy {
        /**
         * The access policy of SASL user. Valid values: `PubSub`, `Pub`, `Sub`.
         */
        accessPolicy: pulumi.Input<string>;
        /**
         * The name of SASL user.
         */
        userName: pulumi.Input<string>;
    }
    interface TopicParameters {
        /**
         * The retention hours of log. Unit: hour. Valid values: 0-2160. Default is 72.
         */
        logRetentionHours?: pulumi.Input<number>;
        /**
         * The max byte of message. Unit: MB. Valid values: 1-12. Default is 10.
         */
        messageMaxByte?: pulumi.Input<number>;
        /**
         * The min number of sync replica. The default value is the replica number minus 1.
         */
        minInsyncReplicaNumber?: pulumi.Input<number>;
    }
}
export declare namespace mongodb {
    interface AccountAccountPrivilege {
        /**
         * The name of database.
         */
        dbName: pulumi.Input<string>;
        /**
         * The role names of the account.
         */
        roleNames: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceMongo {
        /**
         * The mongos node ID.
         */
        mongosNodeId?: pulumi.Input<string>;
        /**
         * The spec of node. When the instanceType is ReplicaSet, this parameter represents the computing node specification of the replica set instance. When the instanceType is ShardedCluster, this parameter represents the specification of the Shard node.
         */
        nodeSpec?: pulumi.Input<string>;
        /**
         * The node status.
         */
        nodeStatus?: pulumi.Input<string>;
    }
    interface InstanceNodeAvailabilityZone {
        /**
         * The number of readonly nodes in current zone. Currently, only ReplicaSet instances and Shard in ShardedCluster instances support adding readonly nodes.
         * When the instanceType is ReplicaSet, this value represents the total number of readonly nodes in a single replica set instance. Each instance of the replica set supports adding up to 5 readonly nodes.
         * When the instanceType is ShardedCluster, this value represents the number of readonly nodes in each shard. Each shard can add up to 5 readonly nodes.
         */
        nodeNumber: pulumi.Input<number>;
        /**
         * The zone id of readonly nodes.
         */
        zoneId: pulumi.Input<string>;
    }
    interface InstanceShard {
        /**
         * The shard id.
         */
        shardId?: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface MongoAllowListAssociatedInstance {
        /**
         * The instance id that bound to the allow list.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * The instance name that bound to the allow list.
         */
        instanceName?: pulumi.Input<string>;
        /**
         * The project name of the allow list.
         */
        projectName?: pulumi.Input<string>;
        /**
         * The VPC ID.
         */
        vpc?: pulumi.Input<string>;
    }
}
export declare namespace nas {
    interface FileSystemTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface FileSystemsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface FileSystemsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetFileSystemsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetFileSystemsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetPermissionGroupsFilter {
        /**
         * Filters permission groups for specified characteristics based on attributes. The parameters that support filtering are as follows: `PermissionGroupName`, `PermissionGroupId`.
         */
        key: string;
        /**
         * The value of the filter item.
         */
        value: string;
    }
    interface GetPermissionGroupsFilterArgs {
        /**
         * Filters permission groups for specified characteristics based on attributes. The parameters that support filtering are as follows: `PermissionGroupName`, `PermissionGroupId`.
         */
        key: pulumi.Input<string>;
        /**
         * The value of the filter item.
         */
        value: pulumi.Input<string>;
    }
    interface PermissionGroupPermissionRule {
        /**
         * Client IP addresses that are allowed access.
         */
        cidrIp: pulumi.Input<string>;
        /**
         * Permission group read and write rules. The value description is as follows:
         * `RW`: Allows reading and writing.
         * `RO`: read-only mode.
         */
        rwMode: pulumi.Input<string>;
        /**
         * Permission group user permissions. The value description is as follows:
         * `All_squash`: All access users are mapped to anonymous users or user groups.
         * `No_all_squash`: The access user is first matched with the local user, and then mapped to an anonymous user or user group after the match fails.
         * `Root_squash`: Map the Root user as an anonymous user or user group.
         * `No_root_squash`: The Root user maintains the Root account authority.
         */
        useMode: pulumi.Input<string>;
    }
    interface PermissionGroupsFilter {
        /**
         * Filters permission groups for specified characteristics based on attributes. The parameters that support filtering are as follows: `PermissionGroupName`, `PermissionGroupId`.
         */
        key: string;
        /**
         * The value of the filter item.
         */
        value: string;
    }
    interface PermissionGroupsFilterArgs {
        /**
         * Filters permission groups for specified characteristics based on attributes. The parameters that support filtering are as follows: `PermissionGroupName`, `PermissionGroupId`.
         */
        key: pulumi.Input<string>;
        /**
         * The value of the filter item.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace nat {
    interface GatewayTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GatewaysTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GatewaysTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetGatewaysTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetGatewaysTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace organization {
    interface AccountTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace private_zone {
    interface PrivateZoneVpc {
        /**
         * The region of the bind vpc. The default value is the region of the default provider config.
         */
        region?: pulumi.Input<string>;
        /**
         * The id of the bind vpc.
         */
        vpcId: pulumi.Input<string>;
    }
    interface ResolverEndpointIpConfig {
        /**
         * Id of the availability zone.
         */
        azId: pulumi.Input<string>;
        /**
         * Source IP address of traffic. You can add up to 6 IP addresses at most. To ensure high availability, you must add at least two IP addresses.
         */
        ip: pulumi.Input<string>;
        /**
         * Id of the subnet.
         */
        subnetId: pulumi.Input<string>;
    }
    interface ResolverRuleForwardIp {
        /**
         * IP address of the external DNS server. This parameter is only valid when the Type parameter is OUTBOUND and is a required parameter.
         */
        ip: pulumi.Input<string>;
        /**
         * The port of the external DNS server. Default is 53. This parameter is only valid and optional when the Type parameter is OUTBOUND.
         */
        port?: pulumi.Input<number>;
    }
    interface ResolverRuleVpc {
        /**
         * The region of the bind vpc. The default value is the region of the default provider config.
         */
        region?: pulumi.Input<string>;
        /**
         * The id of the bind vpc.
         */
        vpcId: pulumi.Input<string>;
    }
}
export declare namespace privatelink {
    interface VpcEndpointConnectionZone {
        /**
         * The id of the network interface.
         */
        networkInterfaceId?: pulumi.Input<string>;
        /**
         * The ip address of the network interface.
         */
        networkInterfaceIp?: pulumi.Input<string>;
        /**
         * The id of the resource.
         */
        resourceId?: pulumi.Input<string>;
        /**
         * The id of the subnet.
         */
        subnetId?: pulumi.Input<string>;
        /**
         * The domain of the zone.
         */
        zoneDomain?: pulumi.Input<string>;
        /**
         * The id of the zone.
         */
        zoneId?: pulumi.Input<string>;
        /**
         * The status of the zone.
         */
        zoneStatus?: pulumi.Input<string>;
    }
    interface VpcEndpointServiceResource {
        /**
         * The id of resource.
         */
        resourceId: pulumi.Input<string>;
        /**
         * The type of resource.
         */
        resourceType: pulumi.Input<string>;
    }
}
export declare namespace rabbitmq {
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceChargeInfo {
        /**
         * Whether to automatically renew in prepaid scenarios. Default is false.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * The charge type of the rabbitmq instance. Valid values: `PostPaid`, `PrePaid`.
         */
        chargeType: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. When PeriodUnit is specified as `Month`, the value range is 1-9. When PeriodUnit is specified as `Year`, the value range is 1-3. Default is 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario. Valid values: `Month`, `Year`. Default is `Month`.
         */
        periodUnit?: pulumi.Input<string>;
    }
    interface InstanceEndpoint {
        /**
         * The endpoint type of the rabbitmq instance.
         */
        endpointType?: pulumi.Input<string>;
        /**
         * The internal endpoint of the rabbitmq instance.
         */
        internalEndpoint?: pulumi.Input<string>;
        /**
         * The network type of the rabbitmq instance.
         */
        networkType?: pulumi.Input<string>;
        /**
         * The public endpoint of the rabbitmq instance.
         */
        publicEndpoint?: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace rds {
    interface AccountPrivilegeDbPrivilege {
        /**
         * The privilege type of the account.
         */
        accountPrivilege: pulumi.Input<string>;
        /**
         * The privilege string of the account.
         */
        accountPrivilegeStr?: pulumi.Input<string>;
        /**
         * The name of database.
         */
        dbName: pulumi.Input<string>;
    }
    interface InstanceConnectionInfo {
        /**
         * Whether global read-only is enabled.
         */
        enableReadOnly?: pulumi.Input<string>;
        /**
         * Whether read-write separation is enabled.
         */
        enableReadWriteSplitting?: pulumi.Input<string>;
        /**
         * The internal domain of the RDS instance.
         */
        internalDomain?: pulumi.Input<string>;
        /**
         * The interval port of the RDS instance.
         */
        internalPort?: pulumi.Input<string>;
        /**
         * The public domain of the RDS instance.
         */
        publicDomain?: pulumi.Input<string>;
        /**
         * The public port of the RDS instance.
         */
        publicPort?: pulumi.Input<string>;
    }
    interface ParameterTemplateTemplateParam {
        /**
         * Parameter name.
         */
        name?: pulumi.Input<string>;
        /**
         * Parameter running value.
         */
        runningValue?: pulumi.Input<string>;
    }
}
export declare namespace rds_mssql {
    interface BackupBackupMeta {
        /**
         * The name of the database.
         */
        dbName: pulumi.Input<string>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceChargeInfo {
        /**
         * Whether to enable automatic renewal in the prepaid scenario. This parameter can be set when the ChargeType is `Prepaid`.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * Charge end time.
         */
        chargeEndTime?: pulumi.Input<string>;
        /**
         * Charge start time.
         */
        chargeStartTime?: pulumi.Input<string>;
        /**
         * The charge status.
         */
        chargeStatus?: pulumi.Input<string>;
        /**
         * The charge type. Valid values: `PostPaid`, `PrePaid`.
         */
        chargeType: pulumi.Input<string>;
        /**
         * Expected release time when overdue fees are shut down.
         */
        overdueReclaimTime?: pulumi.Input<string>;
        /**
         * Time for Disconnection due to Unpaid Fees.
         */
        overdueTime?: pulumi.Input<string>;
        /**
         * Purchase duration in a prepaid scenario. This parameter is required when the ChargeType is `Prepaid`.
         */
        period?: pulumi.Input<number>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace rds_mysql {
    interface AccountAccountPrivilege {
        /**
         * The privilege type of the account.
         */
        accountPrivilege: pulumi.Input<string>;
        /**
         * The privilege detail of the account.
         */
        accountPrivilegeDetail?: pulumi.Input<string>;
        /**
         * The name of database.
         */
        dbName: pulumi.Input<string>;
    }
    interface AllowlistSecurityGroupBindInfo {
        /**
         * The schema for the associated security group.
         * IngressDirectionIp: Incoming Direction IP.
         * AssociateEcsIp: Associate ECSIP.
         * explain: In the CreateAllowList interface, SecurityGroupBindInfoObject BindMode and SecurityGroupId fields are required.
         */
        bindMode: pulumi.Input<string>;
        /**
         * The security group id of the allow list.
         */
        securityGroupId: pulumi.Input<string>;
    }
    interface BackupBackupMeta {
        /**
         * Specify the database that needs to be backed up.
         */
        dbName: pulumi.Input<string>;
        /**
         * Specify the tables to be backed up in the specified database. When this field is empty, it defaults to full database backup.
         */
        tableNames?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface EndpointReadOnlyNodeWeight {
        /**
         * Read-only nodes require NodeId to be passed, while primary nodes do not require it.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * The primary node needs to pass in the NodeType as Primary, while the read-only node does not need to pass it in.
         */
        nodeType?: pulumi.Input<string>;
        /**
         * The read weight of the node increases by 100, with a maximum value of 10000.
         */
        weight: pulumi.Input<number>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceChargeDetail {
        /**
         * Whether to automatically renew in prepaid scenarios.
         * Autorenew_Enable
         * Autorenew_Disable (default).
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * Billing expiry time (yearly and monthly only).
         */
        chargeEndTime?: pulumi.Input<string>;
        /**
         * Billing start time (pay-as-you-go & monthly subscription).
         */
        chargeStartTime?: pulumi.Input<string>;
        /**
         * Pay status. Value:
         * normal - normal
         * overdue - overdue
         * .
         */
        chargeStatus?: pulumi.Input<string>;
        /**
         * Payment type. Value:
         * PostPaid - Pay-As-You-Go
         * PrePaid - Yearly and monthly (default).
         */
        chargeType?: pulumi.Input<string>;
        /**
         * Estimated release time when arrears are closed (pay-as-you-go & monthly subscription).
         */
        overdueReclaimTime?: pulumi.Input<string>;
        /**
         * Shutdown time in arrears (pay-as-you-go & monthly subscription).
         */
        overdueTime?: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. Default: 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario.
         * Month - monthly subscription (default)
         * Year - Package year.
         */
        periodUnit?: pulumi.Input<string>;
        /**
         * Restore time of temporary upgrade.
         */
        tempModifyEndTime?: pulumi.Input<string>;
        /**
         * Temporary upgrade start time.
         */
        tempModifyStartTime?: pulumi.Input<string>;
    }
    interface InstanceChargeInfo {
        /**
         * Whether to automatically renew in prepaid scenarios.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * Payment type. Value:
         * PostPaid - Pay-As-You-Go
         * PrePaid - Yearly and monthly (default).
         */
        chargeType: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. Default: 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario.
         * Month - monthly subscription (default)
         * Year - Package year.
         */
        periodUnit?: pulumi.Input<string>;
    }
    interface InstanceEndpoint {
        /**
         * Address list.
         */
        addresses?: pulumi.Input<pulumi.Input<inputs.rds_mysql.InstanceEndpointAddress>[]>;
        /**
         * When the terminal type is read-write terminal or read-only terminal, it supports setting whether new nodes are automatically added.
         */
        autoAddNewNodes?: pulumi.Input<string>;
        /**
         * Address description.
         */
        description?: pulumi.Input<string>;
        /**
         * Whether global read-only is enabled, value: Enable: Enable. Disable: Disabled.
         */
        enableReadOnly?: pulumi.Input<string>;
        /**
         * Whether read-write separation is enabled, value: Enable: Enable. Disable: Disabled.
         */
        enableReadWriteSplitting?: pulumi.Input<string>;
        /**
         * Instance connection terminal ID.
         */
        endpointId?: pulumi.Input<string>;
        /**
         * The instance connection terminal name.
         */
        endpointName?: pulumi.Input<string>;
        /**
         * Terminal type:
         * Cluster: The default terminal. (created by default)
         * Primary: Primary node terminal.
         * Custom: Custom terminal.
         * Direct: Direct connection to the terminal. (Only the operation and maintenance side)
         * AllNode: All node terminals. (Only the operation and maintenance side).
         */
        endpointType?: pulumi.Input<string>;
        /**
         * Whether the idle connection reclaim function is enabled. true: Enabled. false: Disabled.
         */
        idleConnectionReclaim?: pulumi.Input<boolean>;
        /**
         * The list of nodes configured by the connection terminal and the corresponding read-only weights.
         */
        nodeWeights?: pulumi.Input<pulumi.Input<inputs.rds_mysql.InstanceEndpointNodeWeight>[]>;
        /**
         * Read and write mode:
         * ReadWrite: read and write
         * ReadOnly: read only (default).
         */
        readWriteMode?: pulumi.Input<string>;
    }
    interface InstanceEndpointAddress {
        /**
         * DNS Visibility.
         */
        dnsVisibility?: pulumi.Input<boolean>;
        /**
         * Connect domain name.
         */
        domain?: pulumi.Input<string>;
        /**
         * The ID of the EIP, only valid for Public addresses.
         */
        eipId?: pulumi.Input<string>;
        /**
         * The IP Address.
         */
        ipAddress?: pulumi.Input<string>;
        /**
         * Network address type, temporarily Private, Public, PublicService.
         */
        networkType?: pulumi.Input<string>;
        /**
         * The Port.
         */
        port?: pulumi.Input<string>;
        /**
         * Subnet ID of the RDS instance.
         */
        subnetId?: pulumi.Input<string>;
    }
    interface InstanceEndpointNodeWeight {
        /**
         * Node ID.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * Node type. Value: Primary: Primary node.
         * Secondary: Standby node.
         * ReadOnly: Read-only node.
         */
        nodeType?: pulumi.Input<string>;
        /**
         * The weight of the node.
         */
        weight?: pulumi.Input<number>;
    }
    interface InstanceFeatureState {
        /**
         * Whether it is enabled. Values:
         * true: Enabled.
         * false: Disabled.
         */
        enable?: pulumi.Input<boolean>;
        /**
         * Feature name.
         */
        featureName?: pulumi.Input<string>;
        /**
         * Whether it support this function. Value:
         * true: Supported.
         * false: Not supported.
         */
        support?: pulumi.Input<boolean>;
    }
    interface InstanceMaintenanceWindow {
        /**
         * Maintenance cycle granularity, values: Week: Week. Month: Month.
         */
        dayKind?: pulumi.Input<string>;
        /**
         * Specify the maintainable time period of a certain day of the week. The values are: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. Multiple selections are allowed. If this value is not specified or is empty, it defaults to specifying all seven days of the week.
         */
        dayOfWeeks?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * Maintenance period of an instance. Format: HH:mmZ-HH:mmZ (UTC time).
         */
        maintenanceTime?: pulumi.Input<string>;
    }
    interface InstanceNode {
        /**
         * Node creation local time.
         */
        createTime?: pulumi.Input<string>;
        /**
         * Instance ID.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * Memory size in GB.
         */
        memory?: pulumi.Input<number>;
        /**
         * Node ID.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * The specification of primary node and secondary node.
         */
        nodeSpec?: pulumi.Input<string>;
        /**
         * Node state, value: aligned with instance state.
         */
        nodeStatus?: pulumi.Input<string>;
        /**
         * Node type. Value: Primary: Primary node.
         * Secondary: Standby node.
         * ReadOnly: Read-only node.
         */
        nodeType?: pulumi.Input<string>;
        /**
         * The region of the RDS instance.
         */
        regionId?: pulumi.Input<string>;
        /**
         * The update time of the RDS instance.
         */
        updateTime?: pulumi.Input<string>;
        /**
         * CPU size.
         */
        vCpu?: pulumi.Input<number>;
        /**
         * The available zone of the RDS instance.
         */
        zoneId?: pulumi.Input<string>;
    }
    interface InstanceParameter {
        /**
         * Parameter name.
         */
        parameterName: pulumi.Input<string>;
        /**
         * Parameter value.
         */
        parameterValue: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ParameterTemplateTemplateParam {
        /**
         * Instance parameter name.
         * Description: When using CreateParameterTemplate and ModifyParameterTemplate as request parameters, only Name and RunningValue need to be passed in.
         */
        name: pulumi.Input<string>;
        /**
         * Parameter running value.
         * Description: When making request parameters in CreateParameterTemplate and ModifyParameterTemplate, only Name and RunningValue need to be passed in.
         */
        runningValue: pulumi.Input<string>;
    }
}
export declare namespace rds_postgresql {
    interface AllowlistAssociatedInstance {
        /**
         * The id of the postgresql instance.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * The name of the postgresql instance.
         */
        instanceName?: pulumi.Input<string>;
        /**
         * The id of the vpc.
         */
        vpc?: pulumi.Input<string>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceChargeDetail {
        /**
         * Whether to automatically renew in prepaid scenarios.
         * Autorenew_Enable
         * Autorenew_Disable (default).
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * Billing expiry time (yearly and monthly only).
         */
        chargeEndTime?: pulumi.Input<string>;
        /**
         * Billing start time (pay-as-you-go & monthly subscription).
         */
        chargeStartTime?: pulumi.Input<string>;
        /**
         * Pay status. Value:
         * normal - normal
         * overdue - overdue
         * .
         */
        chargeStatus?: pulumi.Input<string>;
        /**
         * Payment type. Value:
         * PostPaid - Pay-As-You-Go
         * PrePaid - Yearly and monthly (default).
         */
        chargeType?: pulumi.Input<string>;
        /**
         * Estimated release time when arrears are closed (pay-as-you-go & monthly subscription).
         */
        overdueReclaimTime?: pulumi.Input<string>;
        /**
         * Shutdown time in arrears (pay-as-you-go & monthly subscription).
         */
        overdueTime?: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. Default: 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario.
         * Month - monthly subscription (default)
         * Year - Package year.
         */
        periodUnit?: pulumi.Input<string>;
        /**
         * Temporary upgrade of restoration time.
         */
        tempModifyEndTime?: pulumi.Input<string>;
        /**
         * Start time of temporary upgrade.
         */
        tempModifyStartTime?: pulumi.Input<string>;
    }
    interface InstanceChargeInfo {
        /**
         * Whether to automatically renew in prepaid scenarios.
         */
        autoRenew?: pulumi.Input<boolean>;
        chargeType: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. Default: 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario.
         * Month - monthly subscription (default)
         * Year - Package year.
         */
        periodUnit?: pulumi.Input<string>;
    }
    interface InstanceEndpoint {
        /**
         * Address list.
         */
        addresses?: pulumi.Input<pulumi.Input<inputs.rds_postgresql.InstanceEndpointAddress>[]>;
        /**
         * When the terminal type is read-write terminal or read-only terminal, it supports setting whether new nodes are automatically added.
         */
        autoAddNewNodes?: pulumi.Input<string>;
        /**
         * Address description.
         */
        description?: pulumi.Input<string>;
        /**
         * Whether global read-only is enabled, value: Enable: Enable. Disable: Disabled.
         */
        enableReadOnly?: pulumi.Input<string>;
        /**
         * Whether read-write separation is enabled, value: Enable: Enable. Disable: Disabled.
         */
        enableReadWriteSplitting?: pulumi.Input<string>;
        /**
         * Instance connection terminal ID.
         */
        endpointId?: pulumi.Input<string>;
        /**
         * The instance connection terminal name.
         */
        endpointName?: pulumi.Input<string>;
        /**
         * Terminal type:
         * Cluster: The default terminal. (created by default)
         * Primary: Primary node terminal.
         * Custom: Custom terminal.
         * Direct: Direct connection to the terminal. (Only the operation and maintenance side)
         * AllNode: All node terminals. (Only the operation and maintenance side).
         */
        endpointType?: pulumi.Input<string>;
        /**
         * The list of nodes configured by the connection terminal and the corresponding read-only weights.
         */
        readOnlyNodeWeights?: pulumi.Input<pulumi.Input<inputs.rds_postgresql.InstanceEndpointReadOnlyNodeWeight>[]>;
        /**
         * Read and write mode:
         * ReadWrite: read and write
         * ReadOnly: read only (default).
         */
        readWriteMode?: pulumi.Input<string>;
    }
    interface InstanceEndpointAddress {
        /**
         * DNS Visibility.
         */
        dnsVisibility?: pulumi.Input<boolean>;
        /**
         * Connect domain name.
         */
        domain?: pulumi.Input<string>;
        /**
         * The ID of the EIP, only valid for Public addresses.
         */
        eipId?: pulumi.Input<string>;
        /**
         * The IP Address.
         */
        ipAddress?: pulumi.Input<string>;
        /**
         * Network address type, temporarily Private, Public, PublicService.
         */
        networkType?: pulumi.Input<string>;
        /**
         * The Port.
         */
        port?: pulumi.Input<string>;
        /**
         * Subnet ID of the RDS PostgreSQL instance.
         */
        subnetId?: pulumi.Input<string>;
    }
    interface InstanceEndpointReadOnlyNodeWeight {
        /**
         * Node ID.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * Node type. Value: Primary: Primary node.
         * Secondary: Standby node.
         * ReadOnly: Read-only node.
         */
        nodeType?: pulumi.Input<string>;
        /**
         * The weight of the node.
         */
        weight?: pulumi.Input<number>;
    }
    interface InstanceNode {
        /**
         * Node creation local time.
         */
        createTime?: pulumi.Input<string>;
        /**
         * Instance ID.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * Memory size in GB.
         */
        memory?: pulumi.Input<number>;
        /**
         * Node ID.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * The specification of primary node and secondary node.
         */
        nodeSpec?: pulumi.Input<string>;
        /**
         * Node state, value: aligned with instance state.
         */
        nodeStatus?: pulumi.Input<string>;
        /**
         * Node type. Value: Primary: Primary node.
         * Secondary: Standby node.
         * ReadOnly: Read-only node.
         */
        nodeType?: pulumi.Input<string>;
        /**
         * The region of the RDS PostgreSQL instance.
         */
        regionId?: pulumi.Input<string>;
        /**
         * The update time of the RDS PostgreSQL instance.
         */
        updateTime?: pulumi.Input<string>;
        /**
         * CPU size.
         */
        vCpu?: pulumi.Input<number>;
        /**
         * The available zone of the RDS PostgreSQL instance.
         */
        zoneId?: pulumi.Input<string>;
    }
    interface InstanceParameter {
        /**
         * Parameter name.
         */
        name: pulumi.Input<string>;
        /**
         * Parameter value.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace rds_v2 {
    interface RdsInstanceV2ChargeInfo {
        /**
         * Whether to automatically renew in prepaid scenarios.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * Payment type. Value:
         * PostPaid - Pay-As-You-Go
         * PrePaid - Yearly and monthly (default).
         */
        chargeType: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. Default: 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario.
         * Month - monthly subscription (default)
         * Year - Package year.
         */
        periodUnit?: pulumi.Input<string>;
    }
    interface RdsInstanceV2ConnectionInfo {
        /**
         * Address list.
         */
        addresses?: pulumi.Input<pulumi.Input<inputs.rds_v2.RdsInstanceV2ConnectionInfoAddress>[]>;
        /**
         * When the terminal type is read-write terminal or read-only terminal, it supports setting whether new nodes are automatically added.
         */
        autoAddNewNodes?: pulumi.Input<string>;
        /**
         * Address description.
         */
        description?: pulumi.Input<string>;
        /**
         * Whether global read-only is enabled, value: Enable: Enable. Disable: Disabled.
         */
        enableReadOnly?: pulumi.Input<string>;
        /**
         * Whether read-write separation is enabled, value: Enable: Enable. Disable: Disabled.
         */
        enableReadWriteSplitting?: pulumi.Input<string>;
        /**
         * Instance connection terminal ID.
         */
        endpointId?: pulumi.Input<string>;
        /**
         * The instance connection terminal name.
         */
        endpointName?: pulumi.Input<string>;
        /**
         * Terminal type:
         * Cluster: The default terminal. (created by default)
         * Primary: Primary node terminal.
         * Custom: Custom terminal.
         * Direct: Direct connection to the terminal. (Only the operation and maintenance side)
         * AllNode: All node terminals. (Only the operation and maintenance side).
         */
        endpointType?: pulumi.Input<string>;
        /**
         * The list of nodes configured by the connection terminal and the corresponding read-only weights.
         */
        readOnlyNodeWeights?: pulumi.Input<pulumi.Input<inputs.rds_v2.RdsInstanceV2ConnectionInfoReadOnlyNodeWeight>[]>;
        /**
         * Read and write mode:
         * ReadWrite: read and write
         * ReadOnly: read only (default).
         */
        readWriteMode?: pulumi.Input<string>;
    }
    interface RdsInstanceV2ConnectionInfoAddress {
        /**
         * Connect domain name.
         */
        domain?: pulumi.Input<string>;
        /**
         * The ID of the EIP, only valid for Public addresses.
         */
        eipId?: pulumi.Input<string>;
        /**
         * The IP Address.
         */
        ipAddress?: pulumi.Input<string>;
        /**
         * Network address type, temporarily Private, Public, PublicService.
         */
        networkType?: pulumi.Input<string>;
        /**
         * The Port.
         */
        port?: pulumi.Input<string>;
        /**
         * Subnet ID.
         */
        subnetId?: pulumi.Input<string>;
    }
    interface RdsInstanceV2ConnectionInfoReadOnlyNodeWeight {
        /**
         * The ID of the node.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * The type of the node.
         */
        nodeType?: pulumi.Input<string>;
        /**
         * The weight of the node.
         */
        weight?: pulumi.Input<number>;
    }
    interface RdsInstanceV2NodeInfo {
        /**
         * The ID of the node.
         */
        nodeId?: pulumi.Input<string>;
        /**
         * Masternode specs. Pass
         * DescribeDBInstanceSpecs Query the instance specifications that can be sold.
         */
        nodeSpec: pulumi.Input<string>;
        /**
         * Node type, the value is "Primary", "Secondary", "ReadOnly".
         */
        nodeType: pulumi.Input<string>;
        /**
         * Zone ID.
         */
        zoneId: pulumi.Input<string>;
    }
}
export declare namespace redis {
    interface AllowListAssociatedInstance {
        /**
         * Id of instance.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * Name of instance.
         */
        instanceName?: pulumi.Input<string>;
        /**
         * Id of virtual private cloud.
         */
        vpc?: pulumi.Input<string>;
    }
    interface BackupInstanceDetail {
        /**
         * Id of account.
         */
        accountId?: pulumi.Input<number>;
        /**
         * Arch type of instance(Standard/Cluster).
         */
        archType?: pulumi.Input<string>;
        /**
         * Charge type of instance(Postpaid/Prepaid).
         */
        chargeType?: pulumi.Input<string>;
        /**
         * Engine version of instance.
         */
        engineVersion?: pulumi.Input<string>;
        /**
         * Expired time of instance.
         */
        expiredTime?: pulumi.Input<string>;
        /**
         * Id of instance to create backup.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * Name of instance.
         */
        instanceName?: pulumi.Input<string>;
        /**
         * The maintainable period (in UTC) of the instance.
         */
        maintenanceTime?: pulumi.Input<string>;
        /**
         * Network type of instance.
         */
        networkType?: pulumi.Input<string>;
        /**
         * Project name of instance.
         */
        projectName?: pulumi.Input<string>;
        /**
         * Id of region.
         */
        regionId?: pulumi.Input<string>;
        /**
         * Count of replica in which shard.
         */
        replicas?: pulumi.Input<number>;
        /**
         * Count of cpu cores of instance.
         */
        serverCpu?: pulumi.Input<number>;
        /**
         * Capacity of shard.
         */
        shardCapacity?: pulumi.Input<number>;
        /**
         * Count of shard.
         */
        shardCount?: pulumi.Input<number>;
        /**
         * Total capacity of instance.
         */
        totalCapacity?: pulumi.Input<number>;
        /**
         * Capacity used of this instance.
         */
        usedCapacity?: pulumi.Input<number>;
        /**
         * Information of vpc.
         */
        vpcInfos?: pulumi.Input<pulumi.Input<inputs.redis.BackupInstanceDetailVpcInfo>[]>;
        /**
         * List of id of zone.
         */
        zoneIds?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface BackupInstanceDetailVpcInfo {
        /**
         * Id of vpc.
         */
        id?: pulumi.Input<string>;
        /**
         * Name of vpc.
         */
        name?: pulumi.Input<string>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceConfigureNode {
        /**
         * Set the availability zone to which the node belongs. The number of nodes of an instance (i.e., NodeNumber) and the availability zone deployment scheme (i.e., the value of the MultiAZ parameter) will affect the filling of the current parameter. Among them:
         * When a new instance is a single-node instance (i.e., the value of NodeNumber is 1), only a single availability zone deployment scheme is allowed (i.e., the value of MultiAZ must be disabled). At this time, only one availability zone needs to be passed in AZ, and all nodes in the instance will be deployed in this availability zone. When creating a new instance as a primary-standby instance (that is, when the value of NodeNumber is greater than or equal to 2), the number of availability zones passed in must be equal to the number of nodes in a single shard (that is, the value of the NodeNumber parameter), and the value of AZ must comply with the multi-availability zone deployment scheme rules. The specific rules are as follows: If the primary-standby instance selects the multi-availability zone deployment scheme (that is, the value of MultiAZ is enabled), then at least two different availability zone IDs must be passed in in AZ, and the first availability zone is the availability zone where the primary node is located. If the primary and standby instances choose a single availability zone deployment scheme (that is, the value of MultiAZ is disabled), then the availability zones passed in for each node must be the same.
         */
        az: pulumi.Input<string>;
    }
    interface InstanceParamValue {
        /**
         * The name of configuration parameter.
         */
        name: pulumi.Input<string>;
        /**
         * The value of configuration parameter.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace rocketmq {
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RocketMQAccessKeyTopicPermission {
        /**
         * The custom authority for the topic.
         */
        permission?: pulumi.Input<string>;
        /**
         * The name of the rocketmq topic.
         */
        topicName?: pulumi.Input<string>;
    }
    interface RocketMQAllowListAssociatedInstance {
        /**
         * The id of the rocketmq instance.
         */
        instanceId?: pulumi.Input<string>;
        /**
         * The name of the rocketmq instance.
         */
        instanceName?: pulumi.Input<string>;
        /**
         * The vpc id of the rocketmq instance.
         */
        vpc?: pulumi.Input<string>;
    }
    interface RocketMQInstanceChargeInfo {
        /**
         * Whether to automatically renew in prepaid scenarios. Default is false.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * The charge type of the rocketmq instance. Valid values: `PostPaid`, `PrePaid`.
         */
        chargeType: pulumi.Input<string>;
        /**
         * Purchase duration in prepaid scenarios. When PeriodUnit is specified as `Monthly`, the value range is 1-9. When PeriodUnit is specified as `Yearly`, the value range is 1-3. Default is 1.
         */
        period?: pulumi.Input<number>;
        /**
         * The purchase cycle in the prepaid scenario. Valid values: `Monthly`, `Yearly`. Default is `Monthly`.
         */
        periodUnit?: pulumi.Input<string>;
    }
    interface RocketMQInstanceConnectionInfo {
        /**
         * The endpoint address ip of the rocketmq.
         */
        endpointAddressIp?: pulumi.Input<string>;
        /**
         * The endpoint type of the rocketmq.
         */
        endpointType?: pulumi.Input<string>;
        /**
         * The internal endpoint of the rocketmq.
         */
        internalEndpoint?: pulumi.Input<string>;
        /**
         * The network type of the rocketmq.
         */
        networkType?: pulumi.Input<string>;
        /**
         * The public endpoint of the rocketmq.
         */
        publicEndpoint?: pulumi.Input<string>;
    }
    interface RocketMQInstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RocketMQTopicAccessPolicy {
        /**
         * The access key of the rocketmq key.
         */
        accessKey: pulumi.Input<string>;
        /**
         * The authority of the rocketmq key for the current topic. Valid values: `ALL`, `PUB`, `SUB`, `DENY`. Default is `DENY`.
         */
        authority: pulumi.Input<string>;
    }
    interface RocketMQTopicGroup {
        /**
         * The id of the rocketmq group.
         */
        groupId?: pulumi.Input<string>;
        /**
         * The message model of the rocketmq group.
         */
        messageModel?: pulumi.Input<string>;
        /**
         * The sub string of the rocketmq group.
         */
        subString?: pulumi.Input<string>;
    }
    interface RocketMQTopicQueue {
        /**
         * The end offset of the rocketmq queue.
         */
        endOffset?: pulumi.Input<number>;
        /**
         * The last update timestamp of the rocketmq queue.
         */
        lastUpdateTimestamp?: pulumi.Input<number>;
        /**
         * The message count of the rocketmq queue.
         */
        messageCount?: pulumi.Input<number>;
        /**
         * The id of the rocketmq queue.
         */
        queueId?: pulumi.Input<string>;
        /**
         * The start offset of the rocketmq queue.
         */
        startOffset?: pulumi.Input<number>;
    }
}
export declare namespace tls {
    interface AlarmAlarmPeriodDetail {
        /**
         * Email alarm period, the unit is minutes, and the value range is 1~1440.
         */
        email: pulumi.Input<number>;
        /**
         * Customize the webhook alarm period, the unit is minutes, and the value range is 1~1440.
         */
        generalWebhook: pulumi.Input<number>;
        /**
         * Telephone alarm cycle, the unit is minutes, and the value range is 10~1440.
         */
        phone: pulumi.Input<number>;
        /**
         * SMS alarm cycle, the unit is minutes, and the value range is 10~1440.
         */
        sms: pulumi.Input<number>;
    }
    interface AlarmNotifyGroupReceiver {
        /**
         * The end time.
         */
        endTime: pulumi.Input<string>;
        /**
         * The list of the receiver channels. Currently supported channels: Email, Sms, Phone.
         */
        receiverChannels: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * List of the receiver names.
         */
        receiverNames: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The receiver type, Can be set as: `User`(The id of user).
         */
        receiverType: pulumi.Input<string>;
        /**
         * The start time.
         */
        startTime: pulumi.Input<string>;
    }
    interface AlarmQueryRequest {
        /**
         * The end time of the query range is relative to the current historical time. The unit is minutes. The value is not positive and must be greater than StartTimeOffset. The maximum value is 0 and the minimum value is -1440.
         */
        endTimeOffset: pulumi.Input<number>;
        /**
         * Alarm object sequence number; increments from 1.
         */
        number: pulumi.Input<number>;
        /**
         * Query statement, the maximum supported length is 1024.
         */
        query: pulumi.Input<string>;
        /**
         * The start time of the query range is relative to the current historical time, in minutes. The value is non-positive, the maximum value is 0, and the minimum value is -1440.
         */
        startTimeOffset: pulumi.Input<number>;
        /**
         * The id of the topic.
         */
        topicId: pulumi.Input<string>;
    }
    interface AlarmRequestCycle {
        /**
         * The cycle of alarm task execution, or the time point of periodic execution. The unit is minutes, and the value range is 1~1440.
         */
        time: pulumi.Input<number>;
        /**
         * Execution cycle type.
         * Period: Periodic execution, which means executing once every certain period of time.
         * Fixed: Regular execution, which means executing at a fixed time point every day.
         */
        type: pulumi.Input<string>;
    }
    interface GetProjectsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetProjectsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetTopicsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetTopicsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface IndexFullText {
        /**
         * Whether the FullTextInfo is case sensitive.
         */
        caseSensitive: pulumi.Input<boolean>;
        /**
         * The delimiter of the FullTextInfo.
         */
        delimiter?: pulumi.Input<string>;
        /**
         * Whether the FullTextInfo include chinese.
         */
        includeChinese?: pulumi.Input<boolean>;
    }
    interface IndexKeyValue {
        /**
         * Whether the value is case sensitive.
         */
        caseSensitive?: pulumi.Input<boolean>;
        /**
         * The delimiter of the value.
         */
        delimiter?: pulumi.Input<string>;
        /**
         * Whether the value include chinese.
         */
        includeChinese?: pulumi.Input<boolean>;
        /**
         * Whether to create indexes for all fields in JSON fields with text values. This field is valid when the `valueType` is `json`.
         */
        indexAll?: pulumi.Input<boolean>;
        /**
         * The JSON subfield key value index.
         */
        jsonKeys?: pulumi.Input<pulumi.Input<inputs.tls.IndexKeyValueJsonKey>[]>;
        /**
         * The key of the KeyValueInfo.
         */
        key: pulumi.Input<string>;
        /**
         * Whether the filed is enabled for analysis.
         */
        sqlFlag?: pulumi.Input<boolean>;
        /**
         * The type of value. Valid values: `long`, `double`, `text`, `json`.
         */
        valueType: pulumi.Input<string>;
    }
    interface IndexKeyValueJsonKey {
        /**
         * The key of the subfield key value index.
         */
        key: pulumi.Input<string>;
        /**
         * The type of value. Valid values: `long`, `double`, `text`.
         */
        valueType: pulumi.Input<string>;
    }
    interface IndexUserInnerKeyValue {
        /**
         * Whether the value is case sensitive.
         */
        caseSensitive?: pulumi.Input<boolean>;
        /**
         * The delimiter of the value.
         */
        delimiter?: pulumi.Input<string>;
        /**
         * Whether the value include chinese.
         */
        includeChinese?: pulumi.Input<boolean>;
        /**
         * The JSON subfield key value index.
         */
        jsonKeys?: pulumi.Input<pulumi.Input<inputs.tls.IndexUserInnerKeyValueJsonKey>[]>;
        /**
         * The key of the KeyValueInfo.
         */
        key: pulumi.Input<string>;
        /**
         * Whether the filed is enabled for analysis.
         */
        sqlFlag?: pulumi.Input<boolean>;
        /**
         * The type of value. Valid values: `long`, `double`, `text`, `json`.
         */
        valueType: pulumi.Input<string>;
    }
    interface IndexUserInnerKeyValueJsonKey {
        /**
         * The key of the subfield key value index.
         */
        key: pulumi.Input<string>;
        /**
         * The type of value. Valid values: `long`, `double`, `text`.
         */
        valueType: pulumi.Input<string>;
    }
    interface ProjectTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ProjectsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface ProjectsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RuleContainerRule {
        /**
         * The name of the container to be collected.
         */
        containerNameRegex?: pulumi.Input<string>;
        /**
         * Whether to add environment variables as log tags to raw log data.
         */
        envTag?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * The container environment variable blacklist is used to specify the range of containers not to be collected.
         */
        excludeContainerEnvRegex?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * The container Label blacklist is used to specify the range of containers not to be collected.
         */
        excludeContainerLabelRegex?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * The container environment variable whitelist specifies the container to be collected through the container environment variable. If the whitelist is not enabled, it means that all containers are specified to be collected.
         */
        includeContainerEnvRegex?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * The container label whitelist specifies the containers to be collected through the container label. If the whitelist is not enabled, all containers are specified to be collected.
         */
        includeContainerLabelRegex?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * Collection rules for Kubernetes containers.
         */
        kubernetesRule?: pulumi.Input<inputs.tls.RuleContainerRuleKubernetesRule>;
        /**
         * The collection mode.
         */
        stream: pulumi.Input<string>;
    }
    interface RuleContainerRuleKubernetesRule {
        /**
         * Whether to add Kubernetes Annotation as a log tag to the raw log data.
         */
        annotationTag?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * Specify the containers not to be collected through the Pod Label blacklist, and not enable means to collect all containers.
         */
        excludePodLabelRegex?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * The Pod Label whitelist is used to specify containers to be collected. When the Pod Label whitelist is not enabled, it means that all containers are collected.
         */
        includePodLabelRegex?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * Whether to add Kubernetes Label as a log label to the original log data.
         */
        labelTag?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * The name of the Kubernetes Namespace to be collected. If no Namespace name is specified, all containers will be collected. Namespace names support regular matching.
         */
        namespaceNameRegex?: pulumi.Input<string>;
        /**
         * The Pod name is used to specify the container to be collected. When no Pod name is specified, it means to collect all containers.
         */
        podNameRegex?: pulumi.Input<string>;
        /**
         * Specify the container to be collected by the name of the workload. When no workload name is specified, all containers are collected. The workload name supports regular matching.
         */
        workloadNameRegex?: pulumi.Input<string>;
        /**
         * Specify the containers to be collected by the type of workload, only one type can be selected. When no type is specified, it means all types of containers are collected. The supported types of workloads are:
         * Deployment: stateless workload.
         * StatefulSet: stateful workload.
         * DaemonSet: daemon process.
         * Job: task.
         * CronJob: scheduled task.
         */
        workloadType?: pulumi.Input<string>;
    }
    interface RuleExcludePath {
        /**
         * Collection path type. The path type can be `File` or `Path`.
         */
        type: pulumi.Input<string>;
        /**
         * Collection path.
         */
        value: pulumi.Input<string>;
    }
    interface RuleExtractRule {
        /**
         * The first log line needs to match the regular expression.
         */
        beginRegex?: pulumi.Input<string>;
        /**
         * The delimiter of the log.
         */
        delimiter?: pulumi.Input<string>;
        /**
         * The filter key list.
         */
        filterKeyRegexes?: pulumi.Input<pulumi.Input<inputs.tls.RuleExtractRuleFilterKeyRegex>[]>;
        /**
         * A list of log field names (Key).
         */
        keys?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The entire log needs to match the regular expression.
         */
        logRegex?: pulumi.Input<string>;
        /**
         * Automatically extract log fields according to the specified log template.
         */
        logTemplate?: pulumi.Input<inputs.tls.RuleExtractRuleLogTemplate>;
        /**
         * Parsing format of the time field.
         */
        timeFormat?: pulumi.Input<string>;
        /**
         * The field name of the log time field.
         */
        timeKey?: pulumi.Input<string>;
        /**
         * When uploading the failed log, the key name of the failed log.
         */
        unMatchLogKey?: pulumi.Input<string>;
        /**
         * Whether to upload the log of parsing failure.
         */
        unMatchUpLoadSwitch?: pulumi.Input<boolean>;
    }
    interface RuleExtractRuleFilterKeyRegex {
        /**
         * The name of the filter key.
         */
        key: pulumi.Input<string>;
        /**
         * The log content of the filter field needs to match the regular expression.
         */
        regex: pulumi.Input<string>;
    }
    interface RuleExtractRuleLogTemplate {
        /**
         * Log template content.
         */
        format: pulumi.Input<string>;
        /**
         * The type of the log template.
         */
        type: pulumi.Input<string>;
    }
    interface RuleUserDefineRule {
        /**
         * LogCollector extension configuration.
         */
        advanced?: pulumi.Input<inputs.tls.RuleUserDefineRuleAdvanced>;
        /**
         * Whether to upload raw logs.
         */
        enableRawLog?: pulumi.Input<boolean>;
        /**
         * Add constant fields to logs.
         */
        fields?: pulumi.Input<{
            [key: string]: pulumi.Input<string>;
        }>;
        /**
         * Rules for parsing collection paths. After the rules are set, the fields in the collection path will be extracted through the regular expressions specified in the rules, and added to the log data as metadata.
         */
        parsePathRule?: pulumi.Input<inputs.tls.RuleUserDefineRuleParsePathRule>;
        /**
         * Plugin configuration. After the plugin configuration is enabled, one or more LogCollector processor plugins can be added to parse logs with complex or variable structures.
         */
        plugin?: pulumi.Input<inputs.tls.RuleUserDefineRulePlugin>;
        /**
         * Rules for routing log partitions. Setting this parameter indicates that the HashKey routing shard mode is used when collecting logs, and Log Service will write the data to the shard containing the specified Key value.
         */
        shardHashKey?: pulumi.Input<inputs.tls.RuleUserDefineRuleShardHashKey>;
        /**
         * LogCollector collection strategy, which specifies whether LogCollector collects incremental logs or full logs. The default is false, which means to collect all logs.
         */
        tailFiles?: pulumi.Input<boolean>;
    }
    interface RuleUserDefineRuleAdvanced {
        /**
         * Whether to release the log file handle after reading to the end of the log file. The default is false.
         */
        closeEof?: pulumi.Input<boolean>;
        /**
         * The wait time to release the log file handle. When the log file has not written a new log for more than the specified time, release the handle of the log file.
         */
        closeInactive?: pulumi.Input<number>;
        /**
         * After the log file is removed, whether to release the handle of the log file. The default is false.
         */
        closeRemoved?: pulumi.Input<boolean>;
        /**
         * After the log file is renamed, whether to release the handle of the log file. The default is false.
         */
        closeRenamed?: pulumi.Input<boolean>;
        /**
         * The maximum length of time that LogCollector monitors log files. The unit is seconds, and the default is 0 seconds, which means that there is no limit to the length of time LogCollector monitors log files.
         */
        closeTimeout?: pulumi.Input<number>;
    }
    interface RuleUserDefineRuleParsePathRule {
        /**
         * A list of field names. Log Service will parse the path sample (PathSample) into multiple fields according to the regular expression (Regex), and Keys is used to specify the field name of each field.
         */
        keys?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * Sample capture path for a real scene.
         */
        pathSample?: pulumi.Input<string>;
        /**
         * Regular expression for extracting path fields. It must match the collection path sample, otherwise it cannot be extracted successfully.
         */
        regex?: pulumi.Input<string>;
    }
    interface RuleUserDefineRulePlugin {
        /**
         * LogCollector plugin.
         */
        processors: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface RuleUserDefineRuleShardHashKey {
        /**
         * The HashKey of the log group is used to specify the partition (shard) to be written to by the current log group.
         */
        hashKey: pulumi.Input<string>;
    }
    interface TopicTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface TopicsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface TopicsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace tos {
    interface BucketAccountAcl {
        /**
         * The accountId to control.
         */
        accountId: pulumi.Input<string>;
        /**
         * The acl type to control.Valid value is CanonicalUser.
         */
        aclType?: pulumi.Input<string>;
        /**
         * The permission to control.Valid value is FULL_CONTROL|READ|READ_ACP|WRITE|WRITE_ACP.
         */
        permission: pulumi.Input<string>;
    }
    interface BucketInventoryDestination {
        /**
         * The destination tos bucket information of the bucket inventory.
         */
        tosBucketDestination: pulumi.Input<inputs.tos.BucketInventoryDestinationTosBucketDestination>;
    }
    interface BucketInventoryDestinationTosBucketDestination {
        /**
         * The account id of the destination tos bucket.
         */
        accountId: pulumi.Input<string>;
        /**
         * The name of the destination tos bucket.
         */
        bucket: pulumi.Input<string>;
        /**
         * The format of the bucket inventory. Valid values: `CSV`.
         */
        format: pulumi.Input<string>;
        /**
         * The storage path prefix of the bucket inventory in destination tos bucket.
         */
        prefix?: pulumi.Input<string>;
        /**
         * The role name used to grant TOS access to read all files from the source bucket and write files to the destination bucket. You can use the default TOS role `TosArchiveTOSInventory`.
         */
        role: pulumi.Input<string>;
    }
    interface BucketInventoryFilter {
        /**
         * The prefix matching information of the exported object. If not set, a list of all objects in the bucket will be generated by default.
         */
        prefix?: pulumi.Input<string>;
    }
    interface BucketInventoryOptionalFields {
        /**
         * The information exported from the bucket inventory. Valid values: `Size`, `LastModifiedDate`, `ETag`, `StorageClass`, `IsMultipartUploaded`, `EncryptionStatus`, `CRC64`, `ReplicationStatus`.
         */
        fields?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface BucketInventorySchedule {
        /**
         * The export schedule of the bucket inventory. Valid values: `Daily`, `Weekly`.
         */
        frequency: pulumi.Input<string>;
    }
    interface BucketObjectAccountAcl {
        /**
         * The accountId to control.
         */
        accountId: pulumi.Input<string>;
        /**
         * The acl type to control.Valid value is CanonicalUser.
         */
        aclType?: pulumi.Input<string>;
        /**
         * The permission to control.Valid value is FULL_CONTROL|READ|READ_ACP|WRITE|WRITE_ACP.
         */
        permission: pulumi.Input<string>;
    }
    interface BucketObjectTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface BucketRealtimeLogAccessLogConfiguration {
        /**
         * The ID of the tls dashboard.
         */
        tlsDashboardId?: pulumi.Input<string>;
        /**
         * The ID of the tls project.
         */
        tlsProjectId?: pulumi.Input<string>;
        /**
         * The ID of the tls topic.
         */
        tlsTopicId?: pulumi.Input<string>;
        /**
         * The TLS log retention duration. Unit in days. Valid values range is 1~3650. default is 7.
         */
        ttl?: pulumi.Input<number>;
    }
    interface BucketTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace transit_router {
    interface BandwidthPackageAllocation {
        /**
         * The delete time of the transit router bandwidth package.
         */
        allocateTime?: pulumi.Input<string>;
        /**
         * The delete time of the transit router bandwidth package.
         */
        deleteTime?: pulumi.Input<string>;
        /**
         * The local region id of the transit router.
         */
        localRegionId?: pulumi.Input<string>;
        /**
         * The ID of the peer attachment.
         */
        transitRouterPeerAttachmentId?: pulumi.Input<string>;
    }
    interface BandwidthPackageTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface BandwidthPackagesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface BandwidthPackagesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface DirectConnectGatewayAttachmentTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface DirectConnectGatewayAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface DirectConnectGatewayAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetBandwidthPackagesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetBandwidthPackagesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetDirectConnectGatewayAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetDirectConnectGatewayAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetPeerAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetPeerAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetRouteTablesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetRouteTablesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetTransitRoutersTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetTransitRoutersTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetVpcAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetVpcAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetVpnAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetVpnAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface PeerAttachmentTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface PeerAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface PeerAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RouteTableTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RouteTablesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface RouteTablesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface TransitRouterTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface TransitRouterTransitRouterAttachment {
        /**
         * The create time.
         */
        creationTime?: pulumi.Input<string>;
        /**
         * The id of resource.
         */
        resourceId?: pulumi.Input<string>;
        /**
         * The type of resource.
         */
        resourceType?: pulumi.Input<string>;
        /**
         * The status of the transit router.
         */
        status?: pulumi.Input<string>;
        /**
         * The id of transit router attachment.
         */
        transitRouterAttachmentId?: pulumi.Input<string>;
        /**
         * The name of transit router attachment.
         */
        transitRouterAttachmentName?: pulumi.Input<string>;
        /**
         * The id of transit router route table.
         */
        transitRouterRouteTableId?: pulumi.Input<string>;
        /**
         * The update time.
         */
        updateTime?: pulumi.Input<string>;
    }
    interface TransitRoutersTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface TransitRoutersTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VpcAttachmentAttachPoint {
        /**
         * The id of subnet.
         */
        subnetId: pulumi.Input<string>;
        /**
         * The id of zone.
         */
        zoneId: pulumi.Input<string>;
    }
    interface VpcAttachmentTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VpcAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface VpcAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VpnAttachmentTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VpnAttachmentsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface VpnAttachmentsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace vedb_mysql {
    interface AccountAccountPrivilege {
        /**
         * Authorization database privilege types:
         * ReadWrite: Read and write privilege.
         * ReadOnly: Read-only privilege.
         * DDLOnly: Only DDL privilege.
         * DMLOnly: Only DML privilege.
         * Custom: Custom privilege.
         */
        accountPrivilege: pulumi.Input<string>;
        /**
         * The specific SQL operation permissions contained in the permission type are separated by English commas (,) between multiple strings.
         * When used as a request parameter in the CreateDatabase interface, when the AccountPrivilege value is Custom, this parameter is required. Value range (multiple selections allowed): SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER. When used as a return parameter in the DescribeDatabases interface, regardless of the value of AccountPrivilege, the details of the SQL operation permissions contained in this permission type are returned. For the specific SQL operation permissions contained in each permission type, please refer to the account permission list.
         */
        accountPrivilegeDetail?: pulumi.Input<string>;
        /**
         * Database name requiring authorization.
         */
        dbName: pulumi.Input<string>;
    }
    interface BackupBackupPolicy {
        /**
         * Data backup retention period, value: 7 to 30 days.
         */
        backupRetentionPeriod: pulumi.Input<number>;
        /**
         * The time for executing the backup task has an interval window of 2 hours and must be an even-hour time. Format: HH:mmZ-HH:mmZ (UTC time).
         */
        backupTime: pulumi.Input<string>;
        /**
         * Full backup period. It is recommended to select at least 2 days per week for full backup. Multiple values are separated by English commas (,). Values: Monday: Monday. Tuesday: Tuesday. Wednesday: Wednesday. Thursday: Thursday. Friday: Friday. Saturday: Saturday. Sunday: Sunday.
         */
        fullBackupPeriod: pulumi.Input<string>;
    }
    interface GetInstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetInstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstanceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface InstancesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface InstancesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace veecp {
    interface BatchEdgeMachinesStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        edgeNodeStatusConditionType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface BatchEdgeMachinesStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        edgeNodeStatusConditionType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface ClusterClusterConfig {
        /**
         * Cluster API Server public network access configuration information. It takes effect only when ApiServerPublicAccessEnabled=true.
         */
        apiServerPublicAccessConfig?: pulumi.Input<inputs.veecp.ClusterClusterConfigApiServerPublicAccessConfig>;
        /**
         * Cluster API Server public network access configuration, values:
         * false: (default value). closed
         * true: opened.
         */
        apiServerPublicAccessEnabled?: pulumi.Input<boolean>;
        /**
         * Node public network access configuration, values:
         * false: (default value). Do not enable public network access. Existing NAT gateways and rules are not affected. true: Enable public network access. After enabling, a NAT gateway is automatically created for the cluster's private network and corresponding rules are configured. Note: This parameter cannot be modified after the cluster is created. Please configure it reasonably.
         */
        resourcePublicAccessDefaultEnabled?: pulumi.Input<boolean>;
        /**
         * The subnet ID for communication within the private network (VPC) of the cluster control plane. You can call the private network API to obtain the subnet ID. Note: When creating a cluster, please ensure that all specified SubnetIds (including but not limited to this parameter) belong to the same private network. It is recommended that you choose subnets in different availability zones as much as possible to improve the high availability of the cluster control plane. Please note that this parameter is not supported to be modified after the cluster is created. Please configure it reasonably.
         */
        subnetIds: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClusterClusterConfigApiServerPublicAccessConfig {
        /**
         * Public network access network configuration.
         */
        publicAccessNetworkConfig?: pulumi.Input<inputs.veecp.ClusterClusterConfigApiServerPublicAccessConfigPublicAccessNetworkConfig>;
    }
    interface ClusterClusterConfigApiServerPublicAccessConfigPublicAccessNetworkConfig {
        /**
         * The peak bandwidth of the public IP, unit: Mbps.
         */
        bandwidth?: pulumi.Input<number>;
        /**
         * Billing type of public IP, the value is `PostPaidByBandwidth` or `PostPaidByTraffic`.
         */
        billingType?: pulumi.Input<string>;
    }
    interface ClusterLoggingConfig {
        /**
         * The TLS log item ID of the collection target.
         */
        logProjectId?: pulumi.Input<string>;
        /**
         * Cluster logging options. This structure can only be modified and added, and cannot be deleted. When encountering a `cannot be deleted` error, please query the log setups of the current cluster and fill in the current `tf` file.
         */
        logSetups?: pulumi.Input<pulumi.Input<inputs.veecp.ClusterLoggingConfigLogSetup>[]>;
    }
    interface ClusterLoggingConfigLogSetup {
        /**
         * Whether to enable the log option, true means enable, false means not enable, the default is false. When Enabled is changed from false to true, a new Topic will be created.
         */
        enabled?: pulumi.Input<boolean>;
        /**
         * The storage time of logs in Log Service. After the specified log storage time is exceeded, the expired logs in this log topic will be automatically cleared. The unit is days, and the default is 30 days. The value range is 1 to 3650, specifying 3650 days means permanent storage.
         */
        logTtl?: pulumi.Input<number>;
        /**
         * The current types of logs that can be enabled are:
         * Audit: Cluster audit logs.
         * KubeApiServer: kube-apiserver component logs.
         * KubeScheduler: kube-scheduler component logs.
         * KubeControllerManager: kube-controller-manager component logs.
         */
        logType: pulumi.Input<string>;
    }
    interface ClusterPodsConfig {
        /**
         * Flannel network configuration. It can be configured only when PodNetworkMode=Flannel, but it is not mandatory.
         */
        flannelConfig?: pulumi.Input<inputs.veecp.ClusterPodsConfigFlannelConfig>;
        /**
         * Container network model, values: Flannel: Flannel network model, an independent Underlay container network solution. Combined with the global routing capability of a private network (VPC), it realizes a high-performance network experience for the cluster. VpcCniShared: VPC-CNI network model, an Underlay container network solution implemented based on the elastic network interface (ENI) of a private network, with high network communication performance. Description: After the cluster is created, this parameter is not supported to be modified temporarily. Please configure it reasonably.
         */
        podNetworkMode: pulumi.Input<string>;
        /**
         * VPC-CNI network configuration. PodNetworkMode=VpcCniShared, but it is not mandatory.
         */
        vpcCniConfig?: pulumi.Input<inputs.veecp.ClusterPodsConfigVpcCniConfig>;
    }
    interface ClusterPodsConfigFlannelConfig {
        /**
         * Upper limit of the number of single-node Pod instances in the Flannel model container network. Values: 64(default value), 16, 32, 128, 256.
         */
        maxPodsPerNode?: pulumi.Input<number>;
        /**
         * Pod CIDR of Flannel model container network. Only configurable when PodNetworkMode=Flannel, but not mandatory. Note: The number of Pods in the cluster is limited by the number of IPs in this CIDR. This parameter cannot be modified after cluster creation. Please plan the Pod CIDR reasonably. Cannot conflict with the following network segments: private network network segments corresponding to ClusterConfig.SubnetIds. All clusters within the same private network's FlannelConfig.PodCidrs. All clusters within the same private network's ServiceConfig.ServiceCidrsv4. Different clusters within the same private network's FlannelConfig.PodCidrs cannot conflict.
         */
        podCidrs: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClusterPodsConfigVpcCniConfig {
        /**
         * A list of Pod subnet IDs for the VPC-CNI container network.
         */
        subnetIds: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClusterServicesConfig {
        /**
         * CIDR used by services within the cluster. It cannot conflict with the following network segments: FlannelConfig.PodCidrs. SubnetIds of all clusters within the same private network or FlannelConfig.VpcConfig.SubnetIds. ServiceConfig.ServiceCidrsv4 of all clusters within the same private network (this parameter).It is stated that currently only one array element is supported. When multiple values are specified, only the first value takes effect.
         */
        serviceCidrsv4s: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClustersStatus {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: string;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: string;
    }
    interface ClustersStatusArgs {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: pulumi.Input<string>;
    }
    interface EdgeNodeAutoCompleteConfig {
        /**
         * The address of the machine to be managed.
         */
        address?: pulumi.Input<string>;
        /**
         * Directly managed through the edge computing instance ID. When it is true, there is no need to provide Address. Only DirectAddInstances needs to be provided.
         */
        directAdd?: pulumi.Input<boolean>;
        /**
         * Edge computing instance ID on Volcano Engine.
         */
        directAddInstances?: pulumi.Input<pulumi.Input<inputs.veecp.EdgeNodeAutoCompleteConfigDirectAddInstance>[]>;
        /**
         * Enable/Disable automatic management.
         */
        enable: pulumi.Input<boolean>;
        /**
         * Login credentials.
         */
        machineAuth?: pulumi.Input<inputs.veecp.EdgeNodeAutoCompleteConfigMachineAuth>;
    }
    interface EdgeNodeAutoCompleteConfigDirectAddInstance {
        /**
         * Edge service ID.
         */
        cloudServerIdentity: pulumi.Input<string>;
        /**
         * Edge computing instance ID.
         */
        instanceIdentity: pulumi.Input<string>;
    }
    interface EdgeNodeAutoCompleteConfigMachineAuth {
        /**
         * Authentication method. Currently only Password is open.
         */
        authType: pulumi.Input<string>;
        /**
         * SSH port, default 22.
         */
        sshPort: pulumi.Input<number>;
        /**
         * Login username.
         */
        user: pulumi.Input<string>;
    }
    interface EdgeNodePoolBillingConfigs {
        /**
         * Whether to automatically renew the node pool.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * The pre-paid period of the node pool, in months. The value range is 1-9. This parameter takes effect only when the billingType is PrePaid.
         */
        prePaidPeriod: pulumi.Input<number>;
        /**
         * Prepaid period number.
         */
        prePaidPeriodNumber: pulumi.Input<number>;
    }
    interface EdgeNodePoolElasticConfig {
        /**
         * The node pool elastic scaling configuration information.
         */
        autoScaleConfig?: pulumi.Input<inputs.veecp.EdgeNodePoolElasticConfigAutoScaleConfig>;
        /**
         * The ID of the edge service corresponding to the elastic node. On the edge computing node's edge service page, obtain the edge service ID.
         */
        cloudServerIdentity: pulumi.Input<string>;
        instanceArea?: pulumi.Input<inputs.veecp.EdgeNodePoolElasticConfigInstanceArea>;
    }
    interface EdgeNodePoolElasticConfigAutoScaleConfig {
        /**
         * The DesiredReplicas of AutoScaling, default 0, range in minReplicas to max_replicas.
         */
        desiredReplicas: pulumi.Input<number>;
        /**
         * Whether to enable the auto scaling function of the node pool. When a node needs to be manually added to the node pool, the value of this field must be `false`.
         */
        enabled: pulumi.Input<boolean>;
        /**
         * The MaxReplicas of AutoScaling, default 10, range in 1~2000. This field is valid when the value of `enabled` is `true`.
         */
        maxReplicas: pulumi.Input<number>;
        /**
         * The MinReplicas of AutoScaling, default 0. This field is valid when the value of `enabled` is `true`.
         */
        minReplicas: pulumi.Input<number>;
        /**
         * The Priority of AutoScaling, default 10, rang in 0~100. This field is valid when the value of `enabled` is `true` and the value of `subnetPolicy` is `Priority`.
         */
        priority: pulumi.Input<number>;
    }
    interface EdgeNodePoolElasticConfigInstanceArea {
        /**
         * Region name. You can obtain the regions and operators supported by instance specifications through the ListAvailableResourceInfo interface.
         */
        areaName?: pulumi.Input<string>;
        /**
         * The cluster name.
         */
        clusterName?: pulumi.Input<string>;
        /**
         * Default operator. When using three-line nodes, this parameter can be configured. After configuration, this operator will be used as the default export.
         */
        defaultIsp?: pulumi.Input<string>;
        /**
         * Public network configuration of three-line nodes. If it is a single-line node, this parameter will be ignored. Value range: single_interface_multi_ip: Single network card with multiple IPs. single_interface_cmcc_ip: Single network card with China Mobile IP. Relevant permissions need to be opened by submitting a work order. single_interface_cucc_ip: Single network card with China Unicom IP. Relevant permissions need to be opened by submitting a work order. single_interface_ctcc_ip: Single network card with China Telecom IP. Relevant permissions need to be opened by submitting a work order. multi_interface_multi_ip: Multiple network cards with multiple IPs. Relevant permissions need to be opened by submitting a work order. no_interface: No public network network card. Relevant permissions need to be opened by submitting a work order. If this parameter is not configured: When there is a public network network card, singleInterfaceMultiIp is used by default. When there is no public network network card, noInterface is used by default.
         */
        externalNetworkMode?: pulumi.Input<string>;
        /**
         * Operator. You can obtain the regions and operators supported by instance specifications through the ListAvailableResourceInfo interface.
         */
        isp?: pulumi.Input<string>;
        /**
         * The subnet id.
         */
        subnetId?: pulumi.Input<string>;
        /**
         * The vpc id.
         */
        vpcIdentity?: pulumi.Input<string>;
    }
    interface EdgeNodePoolKubernetesConfig {
        /**
         * The Labels of KubernetesConfig.
         */
        labels?: pulumi.Input<pulumi.Input<inputs.veecp.EdgeNodePoolKubernetesConfigLabel>[]>;
        /**
         * The Taints of KubernetesConfig.
         */
        taints?: pulumi.Input<pulumi.Input<inputs.veecp.EdgeNodePoolKubernetesConfigTaint>[]>;
    }
    interface EdgeNodePoolKubernetesConfigLabel {
        /**
         * The Key of Labels.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Labels.
         */
        value?: pulumi.Input<string>;
    }
    interface EdgeNodePoolKubernetesConfigTaint {
        /**
         * The Effect of Taints, the value can be `NoSchedule` or `NoExecute` or `PreferNoSchedule`.
         */
        effect?: pulumi.Input<string>;
        /**
         * The Key of Taints.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Taints.
         */
        value?: pulumi.Input<string>;
    }
    interface EdgeNodePoolsStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface EdgeNodePoolsStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface EdgeNodesStatus {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        edgeNodeStatusConditionType?: string;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: string;
    }
    interface EdgeNodesStatusArgs {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        edgeNodeStatusConditionType?: pulumi.Input<string>;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetBatchEdgeMachinesStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        edgeNodeStatusConditionType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface GetBatchEdgeMachinesStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        edgeNodeStatusConditionType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetClustersStatus {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: string;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: string;
    }
    interface GetClustersStatusArgs {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetEdgeNodePoolsStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface GetEdgeNodePoolsStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetEdgeNodesStatus {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        edgeNodeStatusConditionType?: string;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: string;
    }
    interface GetEdgeNodesStatusArgs {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        edgeNodeStatusConditionType?: pulumi.Input<string>;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetNodePoolsStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface GetNodePoolsStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface NodePoolAutoScaling {
        /**
         * The DesiredReplicas of AutoScaling, default 0, range in minReplicas to max_replicas.
         */
        desiredReplicas?: pulumi.Input<number>;
        /**
         * Whether to enable the auto scaling function of the node pool. When a node needs to be manually added to the node pool, the value of this field must be `false`.
         */
        enabled?: pulumi.Input<boolean>;
        /**
         * The MaxReplicas of AutoScaling, default 10, range in 1~2000. This field is valid when the value of `enabled` is `true`.
         */
        maxReplicas?: pulumi.Input<number>;
        /**
         * The MinReplicas of AutoScaling, default 0. This field is valid when the value of `enabled` is `true`.
         */
        minReplicas?: pulumi.Input<number>;
        /**
         * The Priority of AutoScaling, default 10, rang in 0~100. This field is valid when the value of `enabled` is `true` and the value of `subnetPolicy` is `Priority`.
         */
        priority?: pulumi.Input<number>;
        /**
         * Multi-subnet scheduling strategy for nodes. The value can be `ZoneBalance` or `Priority`.
         */
        subnetPolicy?: pulumi.Input<string>;
    }
    interface NodePoolKubernetesConfig {
        /**
         * Whether to disable the function of automatically synchronizing labels and taints to existing nodes. Default is false.
         */
        autoSyncDisabled?: pulumi.Input<boolean>;
        /**
         * The Cordon of KubernetesConfig.
         */
        cordon: pulumi.Input<boolean>;
        /**
         * The Labels of KubernetesConfig.
         */
        labels?: pulumi.Input<pulumi.Input<inputs.veecp.NodePoolKubernetesConfigLabel>[]>;
        /**
         * The NamePrefix of node metadata.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Taints of KubernetesConfig.
         */
        taints?: pulumi.Input<pulumi.Input<inputs.veecp.NodePoolKubernetesConfigTaint>[]>;
    }
    interface NodePoolKubernetesConfigLabel {
        /**
         * The Key of Labels.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Labels.
         */
        value?: pulumi.Input<string>;
    }
    interface NodePoolKubernetesConfigTaint {
        /**
         * The Effect of Taints, the value can be `NoSchedule` or `NoExecute` or `PreferNoSchedule`.
         */
        effect?: pulumi.Input<string>;
        /**
         * The Key of Taints.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Taints.
         */
        value?: pulumi.Input<string>;
    }
    interface NodePoolNodeConfig {
        /**
         * The AdditionalContainerStorageEnabled of NodeConfig.
         */
        additionalContainerStorageEnabled?: pulumi.Input<boolean>;
        /**
         * Is AutoRenew of PrePaid instance of NodeConfig. Valid values: true, false. when InstanceChargeType is PrePaid, default value is true.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * The AutoRenewPeriod of PrePaid instance of NodeConfig. Valid values: 1, 2, 3, 6, 12. Unit: month. when InstanceChargeType is PrePaid and AutoRenew enable, default value is 1.
         */
        autoRenewPeriod?: pulumi.Input<number>;
        /**
         * The DataVolumes of NodeConfig.
         */
        dataVolumes?: pulumi.Input<pulumi.Input<inputs.veecp.NodePoolNodeConfigDataVolume>[]>;
        /**
         * Tags for Ecs.
         */
        ecsTags?: pulumi.Input<pulumi.Input<inputs.veecp.NodePoolNodeConfigEcsTag>[]>;
        /**
         * The IDs of HpcCluster, only one ID is supported currently.
         */
        hpcClusterIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The ImageId of NodeConfig.
         */
        imageId?: pulumi.Input<string>;
        /**
         * The initializeScript of NodeConfig.
         */
        initializeScript?: pulumi.Input<string>;
        /**
         * The InstanceChargeType of PrePaid instance of NodeConfig. Valid values: PostPaid, PrePaid. Default value: PostPaid.
         */
        instanceChargeType?: pulumi.Input<string>;
        /**
         * The InstanceTypeIds of NodeConfig. The value can get from volcengine.veecp.getSupportResourceTypes datasource.
         */
        instanceTypeIds: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The NamePrefix of NodeConfig.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Period of PrePaid instance of NodeConfig. Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36. Unit: month. when InstanceChargeType is PrePaid, default value is 12.
         */
        period?: pulumi.Input<number>;
        /**
         * The Security of NodeConfig.
         */
        security: pulumi.Input<inputs.veecp.NodePoolNodeConfigSecurity>;
        /**
         * The SubnetIds of NodeConfig.
         */
        subnetIds: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The SystemVolume of NodeConfig.
         */
        systemVolume?: pulumi.Input<inputs.veecp.NodePoolNodeConfigSystemVolume>;
    }
    interface NodePoolNodeConfigDataVolume {
        /**
         * The target mount directory of the disk. Must start with `/`.
         */
        mountPoint?: pulumi.Input<string>;
        /**
         * The Size of DataVolumes, the value range in 20~32768. Default value is `20`.
         */
        size?: pulumi.Input<number>;
        /**
         * The Type of DataVolumes, the value can be `PTSSD` or `ESSD_PL0` or `ESSD_FlexPL`. Default value is `ESSD_PL0`.
         */
        type?: pulumi.Input<string>;
    }
    interface NodePoolNodeConfigEcsTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NodePoolNodeConfigSecurity {
        /**
         * The Login of Security.
         */
        login?: pulumi.Input<inputs.veecp.NodePoolNodeConfigSecurityLogin>;
        /**
         * The SecurityGroupIds of Security.
         */
        securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The SecurityStrategies of Security, the value can be empty or `Hids`.
         */
        securityStrategies?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface NodePoolNodeConfigSecurityLogin {
        /**
         * The Password of Security, this field must be encoded with base64.
         */
        password?: pulumi.Input<string>;
        /**
         * The SshKeyPairName of Security.
         */
        sshKeyPairName?: pulumi.Input<string>;
    }
    interface NodePoolNodeConfigSystemVolume {
        /**
         * The Size of SystemVolume, the value range in 20~2048.
         */
        size?: pulumi.Input<number>;
        /**
         * The Type of SystemVolume, the value can be `PTSSD` or `ESSD_PL0` or `ESSD_FlexPL`.
         */
        type?: pulumi.Input<string>;
    }
    interface NodePoolNodeStatistic {
        /**
         * The CreatingCount of Node.
         */
        creatingCount?: pulumi.Input<number>;
        /**
         * The DeletingCount of Node.
         */
        deletingCount?: pulumi.Input<number>;
        /**
         * The FailedCount of Node.
         */
        failedCount?: pulumi.Input<number>;
        /**
         * The RunningCount of Node.
         */
        runningCount?: pulumi.Input<number>;
        /**
         * (**Deprecated**) This field has been deprecated and is not recommended for use. The StartingCount of Node.
         *
         * @deprecated This field has been deprecated and is not recommended for use.
         */
        startingCount?: pulumi.Input<number>;
        /**
         * (**Deprecated**) This field has been deprecated and is not recommended for use. The StoppedCount of Node.
         *
         * @deprecated This field has been deprecated and is not recommended for use.
         */
        stoppedCount?: pulumi.Input<number>;
        /**
         * (**Deprecated**) This field has been deprecated and is not recommended for use. The StoppingCount of Node.
         *
         * @deprecated This field has been deprecated and is not recommended for use.
         */
        stoppingCount?: pulumi.Input<number>;
        /**
         * The TotalCount of Node.
         */
        totalCount?: pulumi.Input<number>;
        /**
         * The UpdatingCount of Node.
         */
        updatingCount?: pulumi.Input<number>;
    }
    interface NodePoolsStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface NodePoolsStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
}
export declare namespace veenedge {
    interface CloudServerBillingConfig {
        /**
         * The method of bandwidth billing. The value can be `MonthlyP95` or `DailyPeak`.
         */
        bandwidthBillingMethod: pulumi.Input<string>;
        /**
         * The method of computing billing. The value can be `MonthlyPeak` or `DailyPeak`.
         */
        computingBillingMethod: pulumi.Input<string>;
    }
    interface CloudServerCustomData {
        /**
         * The custom data info.
         */
        data: pulumi.Input<string>;
    }
    interface CloudServerNetworkConfig {
        /**
         * The peak of bandwidth.
         */
        bandwidthPeak: pulumi.Input<string>;
        /**
         * The name of custom external interface.
         */
        customExternalInterfaceName?: pulumi.Input<string>;
        /**
         * The name of custom internal interface.
         */
        customInternalInterfaceName?: pulumi.Input<string>;
        /**
         * Whether enable ipv6.
         */
        enableIpv6?: pulumi.Input<boolean>;
        /**
         * The internal peak of bandwidth.
         */
        internalBandwidthPeak?: pulumi.Input<string>;
    }
    interface CloudServerScheduleStrategy {
        /**
         * The network strategy.
         */
        networkStrategy: pulumi.Input<string>;
        /**
         * The price strategy. The value can be `highPriority` or `lowPriority`.
         */
        priceStrategy: pulumi.Input<string>;
        /**
         * The type of schedule strategy. The value can be `dispersion` or `concentration`.
         */
        scheduleStrategy: pulumi.Input<string>;
    }
    interface CloudServerStorageConfig {
        /**
         * The disk list info of data.
         */
        dataDiskLists?: pulumi.Input<pulumi.Input<inputs.veenedge.CloudServerStorageConfigDataDiskList>[]>;
        /**
         * The disk info of system.
         */
        systemDisk: pulumi.Input<inputs.veenedge.CloudServerStorageConfigSystemDisk>;
    }
    interface CloudServerStorageConfigDataDiskList {
        /**
         * The capacity of storage.
         */
        capacity: pulumi.Input<string>;
        /**
         * The type of storage. The value can be `CloudBlockHDD` or `CloudBlockSSD`.
         */
        storageType: pulumi.Input<string>;
    }
    interface CloudServerStorageConfigSystemDisk {
        /**
         * The capacity of storage.
         */
        capacity: pulumi.Input<string>;
        /**
         * The type of storage. The value can be `CloudBlockHDD` or `CloudBlockSSD`.
         */
        storageType: pulumi.Input<string>;
    }
}
export declare namespace vepfs {
    interface FileSystemTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface MountServiceAttachFileSystem {
        /**
         * The account id of the vepfs file system.
         */
        accountId?: pulumi.Input<string>;
        /**
         * The id of the vepfs file system.
         */
        customerPath?: pulumi.Input<string>;
        /**
         * The id of the vepfs file system.
         */
        fileSystemId?: pulumi.Input<string>;
        /**
         * The name of the vepfs file system.
         */
        fileSystemName?: pulumi.Input<string>;
        /**
         * The status of the mount service.
         */
        status?: pulumi.Input<string>;
    }
    interface MountServiceNode {
        /**
         * The default password of ecs instance.
         */
        defaultPassword?: pulumi.Input<string>;
        /**
         * The id of ecs instance.
         */
        nodeId?: pulumi.Input<string>;
    }
}
export declare namespace vke {
    interface AddonsStatus {
        /**
         * The state condition in the current main state of the addon, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`,`Unknown`, `ClusterNotRunning`, `CrashLoopBackOff`, `SchedulingFailed`, `NameConflict`, `ResourceCleanupFailed`, `ClusterVersionUpgrading`.
         */
        conditionsType?: string;
        /**
         * The status of addon. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Failed`.
         */
        phase?: string;
    }
    interface AddonsStatusArgs {
        /**
         * The state condition in the current main state of the addon, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`,`Unknown`, `ClusterNotRunning`, `CrashLoopBackOff`, `SchedulingFailed`, `NameConflict`, `ResourceCleanupFailed`, `ClusterVersionUpgrading`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The status of addon. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Failed`.
         */
        phase?: pulumi.Input<string>;
    }
    interface ClusterClusterConfig {
        /**
         * Cluster API Server public network access configuration.
         */
        apiServerPublicAccessConfig?: pulumi.Input<inputs.vke.ClusterClusterConfigApiServerPublicAccessConfig>;
        /**
         * Cluster API Server public network access configuration, the value is `true` or `false`.
         */
        apiServerPublicAccessEnabled?: pulumi.Input<boolean>;
        /**
         * [SkipDoc]The IpFamily configuration,the value is `Ipv4` or `DualStack`.
         */
        ipFamily?: pulumi.Input<string>;
        /**
         * Node public network access configuration, the value is `true` or `false`.
         */
        resourcePublicAccessDefaultEnabled?: pulumi.Input<boolean>;
        /**
         * The subnet ID for the cluster control plane to communicate within the private network.
         * Up to 3 subnets can be selected from each available zone, and a maximum of 2 subnets can be added to each available zone.
         * Cannot support deleting configured subnets.
         */
        subnetIds: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClusterClusterConfigApiServerPublicAccessConfig {
        /**
         * Public network access network configuration.
         */
        publicAccessNetworkConfig?: pulumi.Input<inputs.vke.ClusterClusterConfigApiServerPublicAccessConfigPublicAccessNetworkConfig>;
    }
    interface ClusterClusterConfigApiServerPublicAccessConfigPublicAccessNetworkConfig {
        /**
         * The peak bandwidth of the public IP, unit: Mbps.
         */
        bandwidth?: pulumi.Input<number>;
        /**
         * Billing type of public IP, the value is `PostPaidByBandwidth` or `PostPaidByTraffic`.
         */
        billingType?: pulumi.Input<string>;
    }
    interface ClusterLoggingConfig {
        /**
         * The TLS log item ID of the collection target.
         */
        logProjectId?: pulumi.Input<string>;
        /**
         * Cluster logging options. This structure can only be modified and added, and cannot be deleted. When encountering a `cannot be deleted` error, please query the log setups of the current cluster and fill in the current `tf` file.
         */
        logSetups?: pulumi.Input<pulumi.Input<inputs.vke.ClusterLoggingConfigLogSetup>[]>;
    }
    interface ClusterLoggingConfigLogSetup {
        /**
         * Whether to enable the log option, true means enable, false means not enable, the default is false. When Enabled is changed from false to true, a new Topic will be created.
         */
        enabled?: pulumi.Input<boolean>;
        /**
         * The storage time of logs in Log Service. After the specified log storage time is exceeded, the expired logs in this log topic will be automatically cleared. The unit is days, and the default is 30 days. The value range is 1 to 3650, specifying 3650 days means permanent storage.
         */
        logTtl?: pulumi.Input<number>;
        /**
         * The current types of logs that can be enabled are:
         * Audit: Cluster audit logs.
         * KubeApiServer: kube-apiserver component logs.
         * KubeScheduler: kube-scheduler component logs.
         * KubeControllerManager: kube-controller-manager component logs.
         */
        logType: pulumi.Input<string>;
    }
    interface ClusterPodsConfig {
        /**
         * Flannel network configuration.
         */
        flannelConfig?: pulumi.Input<inputs.vke.ClusterPodsConfigFlannelConfig>;
        /**
         * The container network model of the cluster, the value is `Flannel` or `VpcCniShared`. Flannel: Flannel network model, an independent Underlay container network solution, combined with the global routing capability of VPC, to achieve a high-performance network experience for the cluster. VpcCniShared: VPC-CNI network model, an Underlay container network solution based on the ENI of the private network elastic network card, with high network communication performance.
         */
        podNetworkMode: pulumi.Input<string>;
        /**
         * VPC-CNI network configuration.
         */
        vpcCniConfig?: pulumi.Input<inputs.vke.ClusterPodsConfigVpcCniConfig>;
    }
    interface ClusterPodsConfigFlannelConfig {
        /**
         * The maximum number of single-node Pod instances for a Flannel container network, the value can be `16` or `32` or `64` or `128` or `256`.
         */
        maxPodsPerNode?: pulumi.Input<number>;
        /**
         * Pod CIDR for the Flannel container network.
         */
        podCidrs?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClusterPodsConfigVpcCniConfig {
        /**
         * A list of Pod subnet IDs for the VPC-CNI container network.
         */
        subnetIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The private network where the cluster control plane network resides.
         */
        vpcId?: pulumi.Input<string>;
    }
    interface ClusterServicesConfig {
        /**
         * The IPv4 private network address exposed by the service.
         */
        serviceCidrsv4s: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface ClusterTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface ClustersStatus {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: string;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: string;
    }
    interface ClustersStatusArgs {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: pulumi.Input<string>;
    }
    interface ClustersTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface ClustersTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface DefaultNodePoolBatchAttachInstance {
        /**
         * The flag of additional container storage enable, the value is `true` or `false`..Default is `false`.
         */
        additionalContainerStorageEnabled?: pulumi.Input<boolean>;
        /**
         * The container storage path.When additionalContainerStorageEnabled is `false` will ignore.
         */
        containerStoragePath?: pulumi.Input<string>;
        /**
         * ID of the resource.
         */
        id?: pulumi.Input<string>;
        /**
         * The Image Id to the ECS Instance.
         */
        imageId?: pulumi.Input<string>;
        /**
         * The instance id.
         */
        instanceId: pulumi.Input<string>;
        /**
         * The flag of keep instance name, the value is `true` or `false`.Default is `false`.
         */
        keepInstanceName?: pulumi.Input<boolean>;
        /**
         * The status phase to the Node.
         */
        phase?: pulumi.Input<string>;
    }
    interface DefaultNodePoolBatchAttachKubernetesConfig {
        /**
         * The Cordon of KubernetesConfig.
         */
        cordon?: pulumi.Input<boolean>;
        /**
         * The Labels of KubernetesConfig.
         */
        labels?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolBatchAttachKubernetesConfigLabel>[]>;
        /**
         * The Taints of KubernetesConfig.
         */
        taints?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolBatchAttachKubernetesConfigTaint>[]>;
    }
    interface DefaultNodePoolBatchAttachKubernetesConfigLabel {
        /**
         * The Key of Labels.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Labels.
         */
        value?: pulumi.Input<string>;
    }
    interface DefaultNodePoolBatchAttachKubernetesConfigTaint {
        /**
         * The Effect of Taints. The value can be one of the following: `NoSchedule`, `NoExecute`, `PreferNoSchedule`, default value is `NoSchedule`.
         */
        effect?: pulumi.Input<string>;
        /**
         * The Key of Taints.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Taints.
         */
        value?: pulumi.Input<string>;
    }
    interface DefaultNodePoolBatchAttachNodeConfig {
        /**
         * Tags for Ecs.
         */
        ecsTags?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolBatchAttachNodeConfigEcsTag>[]>;
        /**
         * The initializeScript of NodeConfig.
         */
        initializeScript?: pulumi.Input<string>;
        /**
         * The NamePrefix of NodeConfig.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Security of NodeConfig.
         */
        securities?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolBatchAttachNodeConfigSecurity>[]>;
    }
    interface DefaultNodePoolBatchAttachNodeConfigEcsTag {
        /**
         * The Key of Tags.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value?: pulumi.Input<string>;
    }
    interface DefaultNodePoolBatchAttachNodeConfigSecurity {
        /**
         * The Login of Security.
         */
        logins?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolBatchAttachNodeConfigSecurityLogin>[]>;
        /**
         * The SecurityGroupIds of Security.
         */
        securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The SecurityStrategies of Security.
         */
        securityStrategies?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface DefaultNodePoolBatchAttachNodeConfigSecurityLogin {
        /**
         * The Password of Security.
         */
        password?: pulumi.Input<string>;
        /**
         * The SshKeyPairName of Security.
         */
        sshKeyPairName?: pulumi.Input<string>;
    }
    interface DefaultNodePoolBatchAttachTag {
        /**
         * The Key of Tags.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value?: pulumi.Input<string>;
    }
    interface DefaultNodePoolInstance {
        /**
         * The flag of additional container storage enable, the value is `true` or `false`..Default is `false`.
         */
        additionalContainerStorageEnabled?: pulumi.Input<boolean>;
        /**
         * The container storage path.When additionalContainerStorageEnabled is `false` will ignore.
         */
        containerStoragePath?: pulumi.Input<string>;
        /**
         * ID of the resource.
         */
        id?: pulumi.Input<string>;
        /**
         * The Image Id to the ECS Instance.
         */
        imageId?: pulumi.Input<string>;
        /**
         * The instance id.
         */
        instanceId: pulumi.Input<string>;
        /**
         * The flag of keep instance name, the value is `true` or `false`.Default is `false`.
         */
        keepInstanceName?: pulumi.Input<boolean>;
        /**
         * The status phase to the Node.
         */
        phase?: pulumi.Input<string>;
    }
    interface DefaultNodePoolKubernetesConfig {
        /**
         * The Cordon of KubernetesConfig.
         */
        cordon: pulumi.Input<boolean>;
        /**
         * The Labels of KubernetesConfig.
         */
        labels?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolKubernetesConfigLabel>[]>;
        /**
         * The NamePrefix of node metadata.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Taints of KubernetesConfig.
         */
        taints?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolKubernetesConfigTaint>[]>;
    }
    interface DefaultNodePoolKubernetesConfigLabel {
        /**
         * The Key of Labels.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Labels.
         */
        value?: pulumi.Input<string>;
    }
    interface DefaultNodePoolKubernetesConfigTaint {
        /**
         * The Effect of Taints.
         */
        effect?: pulumi.Input<string>;
        /**
         * The Key of Taints.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Taints.
         */
        value?: pulumi.Input<string>;
    }
    interface DefaultNodePoolNodeConfig {
        /**
         * Tags for Ecs.
         */
        ecsTags?: pulumi.Input<pulumi.Input<inputs.vke.DefaultNodePoolNodeConfigEcsTag>[]>;
        /**
         * The initializeScript of NodeConfig.
         */
        initializeScript?: pulumi.Input<string>;
        /**
         * The NamePrefix of NodeConfig.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Security of NodeConfig.
         */
        security: pulumi.Input<inputs.vke.DefaultNodePoolNodeConfigSecurity>;
    }
    interface DefaultNodePoolNodeConfigEcsTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface DefaultNodePoolNodeConfigSecurity {
        /**
         * The Login of Security.
         */
        login: pulumi.Input<inputs.vke.DefaultNodePoolNodeConfigSecurityLogin>;
        /**
         * The SecurityGroupIds of Security.
         */
        securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The SecurityStrategies of Security.
         */
        securityStrategies?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface DefaultNodePoolNodeConfigSecurityLogin {
        /**
         * The Password of Security.
         */
        password?: pulumi.Input<string>;
        /**
         * The SshKeyPairName of Security.
         */
        sshKeyPairName?: pulumi.Input<string>;
    }
    interface DefaultNodePoolTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetAddonsStatus {
        /**
         * The state condition in the current main state of the addon, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`,`Unknown`, `ClusterNotRunning`, `CrashLoopBackOff`, `SchedulingFailed`, `NameConflict`, `ResourceCleanupFailed`, `ClusterVersionUpgrading`.
         */
        conditionsType?: string;
        /**
         * The status of addon. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Failed`.
         */
        phase?: string;
    }
    interface GetAddonsStatusArgs {
        /**
         * The state condition in the current main state of the addon, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`,`Unknown`, `ClusterNotRunning`, `CrashLoopBackOff`, `SchedulingFailed`, `NameConflict`, `ResourceCleanupFailed`, `ClusterVersionUpgrading`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The status of addon. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Failed`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetClustersStatus {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: string;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: string;
    }
    interface GetClustersStatusArgs {
        /**
         * The state condition in the current main state of the cluster, that is, the reason for entering the main state, there can be multiple reasons, the value contains `Progressing`, `Ok`, `Degraded`, `SetByProvider`, `Balance`, `Security`, `CreateError`, `ResourceCleanupFailed`, `LimitedByQuota`, `StockOut`,`Unknown`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The status of cluster. the value contains `Creating`, `Running`, `Updating`, `Deleting`, `Stopped`, `Failed`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetClustersTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetClustersTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetNodePoolsStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface GetNodePoolsStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface GetNodePoolsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetNodePoolsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetNodesStatus {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        conditionsType?: string;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: string;
    }
    interface GetNodesStatusArgs {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: pulumi.Input<string>;
    }
    interface NodeKubernetesConfig {
        /**
         * The Cordon of KubernetesConfig.
         */
        cordon?: pulumi.Input<boolean>;
        /**
         * The Labels of KubernetesConfig.
         */
        labels?: pulumi.Input<pulumi.Input<inputs.vke.NodeKubernetesConfigLabel>[]>;
        /**
         * The Taints of KubernetesConfig.
         */
        taints?: pulumi.Input<pulumi.Input<inputs.vke.NodeKubernetesConfigTaint>[]>;
    }
    interface NodeKubernetesConfigLabel {
        /**
         * The Key of Labels.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Labels.
         */
        value?: pulumi.Input<string>;
    }
    interface NodeKubernetesConfigTaint {
        /**
         * The Effect of Taints, the value can be `NoSchedule` or `NoExecute` or `PreferNoSchedule`.
         */
        effect?: pulumi.Input<string>;
        /**
         * The Key of Taints.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Taints.
         */
        value?: pulumi.Input<string>;
    }
    interface NodePoolAutoScaling {
        /**
         * The DesiredReplicas of AutoScaling, default 0, range in minReplicas to max_replicas.
         */
        desiredReplicas?: pulumi.Input<number>;
        /**
         * Whether to enable the auto scaling function of the node pool. When a node needs to be manually added to the node pool, the value of this field must be `false`.
         */
        enabled?: pulumi.Input<boolean>;
        /**
         * The MaxReplicas of AutoScaling, default 10, range in 1~2000. This field is valid when the value of `enabled` is `true`.
         */
        maxReplicas?: pulumi.Input<number>;
        /**
         * The MinReplicas of AutoScaling, default 0. This field is valid when the value of `enabled` is `true`.
         */
        minReplicas?: pulumi.Input<number>;
        /**
         * The Priority of AutoScaling, default 10, rang in 0~100. This field is valid when the value of `enabled` is `true` and the value of `subnetPolicy` is `Priority`.
         */
        priority?: pulumi.Input<number>;
        /**
         * Multi-subnet scheduling strategy for nodes. The value can be `ZoneBalance` or `Priority`.
         */
        subnetPolicy?: pulumi.Input<string>;
    }
    interface NodePoolKubernetesConfig {
        /**
         * Whether to disable the function of automatically synchronizing labels and taints to existing nodes. Default is false.
         */
        autoSyncDisabled?: pulumi.Input<boolean>;
        /**
         * The Cordon of KubernetesConfig.
         */
        cordon: pulumi.Input<boolean>;
        /**
         * The KubeletConfig of KubernetesConfig. After adding parameters, deleting parameters does not take effect.
         */
        kubeletConfig?: pulumi.Input<inputs.vke.NodePoolKubernetesConfigKubeletConfig>;
        /**
         * The Labels of KubernetesConfig.
         */
        labels?: pulumi.Input<pulumi.Input<inputs.vke.NodePoolKubernetesConfigLabel>[]>;
        /**
         * The NamePrefix of node metadata.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Taints of KubernetesConfig.
         */
        taints?: pulumi.Input<pulumi.Input<inputs.vke.NodePoolKubernetesConfigTaint>[]>;
    }
    interface NodePoolKubernetesConfigKubeletConfig {
        /**
         * The FeatureGates of KubeletConfig.
         */
        featureGates?: pulumi.Input<inputs.vke.NodePoolKubernetesConfigKubeletConfigFeatureGates>;
        /**
         * The TopologyManagerPolicy of KubeletConfig. Valid values: `none`, `restricted`, `best-effort`, `single-numa-node`. Default is `none`.
         */
        topologyManagerPolicy?: pulumi.Input<string>;
        /**
         * The TopologyManagerScope of KubeletConfig. Valid values: `container`.
         */
        topologyManagerScope?: pulumi.Input<string>;
    }
    interface NodePoolKubernetesConfigKubeletConfigFeatureGates {
        /**
         * Whether to enable QoSResourceManager. Default is false.
         */
        qosResourceManager?: pulumi.Input<boolean>;
    }
    interface NodePoolKubernetesConfigLabel {
        /**
         * The Key of Labels.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Labels.
         */
        value?: pulumi.Input<string>;
    }
    interface NodePoolKubernetesConfigTaint {
        /**
         * The Effect of Taints, the value can be `NoSchedule` or `NoExecute` or `PreferNoSchedule`.
         */
        effect?: pulumi.Input<string>;
        /**
         * The Key of Taints.
         */
        key?: pulumi.Input<string>;
        /**
         * The Value of Taints.
         */
        value?: pulumi.Input<string>;
    }
    interface NodePoolNodeConfig {
        /**
         * The AdditionalContainerStorageEnabled of NodeConfig.
         */
        additionalContainerStorageEnabled?: pulumi.Input<boolean>;
        /**
         * Is AutoRenew of PrePaid instance of NodeConfig. Valid values: true, false. when InstanceChargeType is PrePaid, default value is true.
         */
        autoRenew?: pulumi.Input<boolean>;
        /**
         * The AutoRenewPeriod of PrePaid instance of NodeConfig. Valid values: 1, 2, 3, 6, 12. Unit: month. when InstanceChargeType is PrePaid and AutoRenew enable, default value is 1.
         */
        autoRenewPeriod?: pulumi.Input<number>;
        /**
         * The DataVolumes of NodeConfig.
         */
        dataVolumes?: pulumi.Input<pulumi.Input<inputs.vke.NodePoolNodeConfigDataVolume>[]>;
        /**
         * Tags for Ecs.
         */
        ecsTags?: pulumi.Input<pulumi.Input<inputs.vke.NodePoolNodeConfigEcsTag>[]>;
        /**
         * The IDs of HpcCluster, only one ID is supported currently.
         */
        hpcClusterIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The ImageId of NodeConfig.
         */
        imageId?: pulumi.Input<string>;
        /**
         * The initializeScript of NodeConfig.
         */
        initializeScript?: pulumi.Input<string>;
        /**
         * The InstanceChargeType of PrePaid instance of NodeConfig. Valid values: PostPaid, PrePaid. Default value: PostPaid.
         */
        instanceChargeType?: pulumi.Input<string>;
        /**
         * The InstanceTypeIds of NodeConfig. The value can get from volcengine.vke.getSupportResourceTypes datasource.
         */
        instanceTypeIds: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The NamePrefix of NodeConfig.
         */
        namePrefix?: pulumi.Input<string>;
        /**
         * The Period of PrePaid instance of NodeConfig. Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36. Unit: month. when InstanceChargeType is PrePaid, default value is 12.
         */
        period?: pulumi.Input<number>;
        /**
         * The project name of the ecs instance.
         */
        projectName?: pulumi.Input<string>;
        /**
         * The Security of NodeConfig.
         */
        security: pulumi.Input<inputs.vke.NodePoolNodeConfigSecurity>;
        /**
         * The SubnetIds of NodeConfig.
         */
        subnetIds: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The SystemVolume of NodeConfig.
         */
        systemVolume?: pulumi.Input<inputs.vke.NodePoolNodeConfigSystemVolume>;
    }
    interface NodePoolNodeConfigDataVolume {
        /**
         * The target mount directory of the disk. Must start with `/`.
         */
        mountPoint?: pulumi.Input<string>;
        /**
         * The Size of DataVolumes, the value range in 20~32768. Default value is `20`.
         */
        size?: pulumi.Input<number>;
        /**
         * The Type of DataVolumes, the value can be `PTSSD` or `ESSD_PL0` or `ESSD_FlexPL`. Default value is `ESSD_PL0`.
         */
        type?: pulumi.Input<string>;
    }
    interface NodePoolNodeConfigEcsTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NodePoolNodeConfigSecurity {
        /**
         * The Login of Security.
         */
        login?: pulumi.Input<inputs.vke.NodePoolNodeConfigSecurityLogin>;
        /**
         * The SecurityGroupIds of Security.
         */
        securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
        /**
         * The SecurityStrategies of Security, the value can be empty or `Hids`.
         */
        securityStrategies?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface NodePoolNodeConfigSecurityLogin {
        /**
         * The Password of Security, this field must be encoded with base64.
         */
        password?: pulumi.Input<string>;
        /**
         * The SshKeyPairName of Security.
         */
        sshKeyPairName?: pulumi.Input<string>;
    }
    interface NodePoolNodeConfigSystemVolume {
        /**
         * The Size of SystemVolume, the value range in 20~2048.
         */
        size?: pulumi.Input<number>;
        /**
         * The Type of SystemVolume, the value can be `PTSSD` or `ESSD_PL0` or `ESSD_FlexPL`.
         */
        type?: pulumi.Input<string>;
    }
    interface NodePoolNodeStatistic {
        /**
         * The CreatingCount of Node.
         */
        creatingCount?: pulumi.Input<number>;
        /**
         * The DeletingCount of Node.
         */
        deletingCount?: pulumi.Input<number>;
        /**
         * The FailedCount of Node.
         */
        failedCount?: pulumi.Input<number>;
        /**
         * The RunningCount of Node.
         */
        runningCount?: pulumi.Input<number>;
        /**
         * (**Deprecated**) This field has been deprecated and is not recommended for use. The StartingCount of Node.
         *
         * @deprecated This field has been deprecated and is not recommended for use.
         */
        startingCount?: pulumi.Input<number>;
        /**
         * (**Deprecated**) This field has been deprecated and is not recommended for use. The StoppedCount of Node.
         *
         * @deprecated This field has been deprecated and is not recommended for use.
         */
        stoppedCount?: pulumi.Input<number>;
        /**
         * (**Deprecated**) This field has been deprecated and is not recommended for use. The StoppingCount of Node.
         *
         * @deprecated This field has been deprecated and is not recommended for use.
         */
        stoppingCount?: pulumi.Input<number>;
        /**
         * The TotalCount of Node.
         */
        totalCount?: pulumi.Input<number>;
        /**
         * The UpdatingCount of Node.
         */
        updatingCount?: pulumi.Input<number>;
    }
    interface NodePoolTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NodePoolsStatus {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: string;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: string;
    }
    interface NodePoolsStatusArgs {
        /**
         * Indicates the status condition of the node pool in the active state. The value can be `Progressing` or `Ok` or `VersionPartlyUpgraded` or `StockOut` or `LimitedByQuota` or `Balance` or `Degraded` or `ClusterVersionUpgrading` or `Cluster` or `ResourceCleanupFailed` or `Unknown` or `ClusterNotRunning` or `SetByProvider`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Status. The value can be `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Scaling`.
         */
        phase?: pulumi.Input<string>;
    }
    interface NodePoolsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface NodePoolsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NodesStatus {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        conditionsType?: string;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: string;
    }
    interface NodesStatusArgs {
        /**
         * The Type of Node Condition, the value is `Progressing` or `Ok` or `Unschedulable` or `InitilizeFailed` or `Unknown` or `NotReady` or `Security` or `Balance` or `ResourceCleanupFailed`.
         */
        conditionsType?: pulumi.Input<string>;
        /**
         * The Phase of Node, the value is `Creating` or `Running` or `Updating` or `Deleting` or `Failed` or `Starting` or `Stopping` or `Stopped`.
         */
        phase?: pulumi.Input<string>;
    }
}
export declare namespace vpc {
    interface GetHaVipsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetHaVipsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetNetworkAclsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetNetworkAclsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetNetworkInterfacesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetNetworkInterfacesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetPrefixListsTagFilter {
        /**
         * The key of the tag.
         */
        key?: string;
        /**
         * The values of the tag.
         */
        values?: string[];
    }
    interface GetPrefixListsTagFilterArgs {
        /**
         * The key of the tag.
         */
        key?: pulumi.Input<string>;
        /**
         * The values of the tag.
         */
        values?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface GetRouteTablesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetRouteTablesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetSecurityGroupsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetSecurityGroupsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetSubnetsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetSubnetsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetVpcsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetVpcsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface HaVipTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface HaVipsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface HaVipsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NetworkAclEgressAclEntry {
        /**
         * The description of entry.
         */
        description?: pulumi.Input<string>;
        /**
         * The DestinationCidrIp of entry.
         */
        destinationCidrIp?: pulumi.Input<string>;
        /**
         * The id of entry.
         */
        networkAclEntryId?: pulumi.Input<string>;
        /**
         * The name of entry.
         */
        networkAclEntryName?: pulumi.Input<string>;
        /**
         * The policy of entry. Default is `accept`. The value can be `accept` or `drop`.
         */
        policy?: pulumi.Input<string>;
        /**
         * The port of entry. Default is `-1/-1`. When Protocol is `all`, `icmp` or `gre`, the port range is `-1/-1`, which means no port restriction.When the Protocol is `tcp` or `udp`, the port range is `1~65535`, and the format is `1/200`, `80/80`,which means port 1 to port 200, port 80.
         */
        port?: pulumi.Input<string>;
        /**
         * The priority of entry.
         */
        priority?: pulumi.Input<number>;
        /**
         * The protocol of entry. The value can be `icmp` or `gre` or `tcp` or `udp` or `all`. Default is `all`.
         */
        protocol?: pulumi.Input<string>;
    }
    interface NetworkAclIngressAclEntry {
        /**
         * The description of entry.
         */
        description?: pulumi.Input<string>;
        /**
         * The id of entry.
         */
        networkAclEntryId?: pulumi.Input<string>;
        /**
         * The name of entry.
         */
        networkAclEntryName?: pulumi.Input<string>;
        /**
         * The policy of entry, default is `accept`. The value can be `accept` or `drop`.
         */
        policy?: pulumi.Input<string>;
        /**
         * The port of entry. Default is `-1/-1`. When Protocol is `all`, `icmp` or `gre`, the port range is `-1/-1`, which means no port restriction. When the Protocol is `tcp` or `udp`, the port range is `1~65535`, and the format is `1/200`, `80/80`, which means port 1 to port 200, port 80.
         */
        port?: pulumi.Input<string>;
        /**
         * The priority of entry.
         */
        priority?: pulumi.Input<number>;
        /**
         * The protocol of entry, default is `all`. The value can be `icmp` or `gre` or `tcp` or `udp` or `all`.
         */
        protocol?: pulumi.Input<string>;
        /**
         * The SourceCidrIp of entry.
         */
        sourceCidrIp?: pulumi.Input<string>;
    }
    interface NetworkAclTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NetworkAclsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface NetworkAclsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NetworkInterfaceTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface NetworkInterfacesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface NetworkInterfacesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface PrefixListPrefixListAssociation {
        /**
         * Associated resource ID.
         */
        resourceId?: pulumi.Input<string>;
        /**
         * Related resource types.
         */
        resourceType?: pulumi.Input<string>;
    }
    interface PrefixListPrefixListEntry {
        /**
         * CIDR of prefix list entries.
         */
        cidr?: pulumi.Input<string>;
        /**
         * Description of prefix list entries.
         */
        description?: pulumi.Input<string>;
    }
    interface PrefixListTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface PrefixListsTagFilter {
        /**
         * The key of the tag.
         */
        key?: string;
        /**
         * The values of the tag.
         */
        values?: string[];
    }
    interface PrefixListsTagFilterArgs {
        /**
         * The key of the tag.
         */
        key?: pulumi.Input<string>;
        /**
         * The values of the tag.
         */
        values?: pulumi.Input<pulumi.Input<string>[]>;
    }
    interface RouteTableTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface RouteTablesTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface RouteTablesTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SecurityGroupTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SecurityGroupsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface SecurityGroupsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SubnetTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface SubnetsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface SubnetsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VpcAssociateCen {
        /**
         * The ID of CEN.
         */
        cenId?: pulumi.Input<string>;
        /**
         * The owner ID of CEN.
         */
        cenOwnerId?: pulumi.Input<string>;
        /**
         * The status of CEN.
         */
        cenStatus?: pulumi.Input<string>;
    }
    interface VpcTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface VpcsTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface VpcsTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
export declare namespace vpn {
    interface GatewayTag {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GatewaysTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GatewaysTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
    interface GetGatewaysTag {
        /**
         * The Key of Tags.
         */
        key: string;
        /**
         * The Value of Tags.
         */
        value: string;
    }
    interface GetGatewaysTagArgs {
        /**
         * The Key of Tags.
         */
        key: pulumi.Input<string>;
        /**
         * The Value of Tags.
         */
        value: pulumi.Input<string>;
    }
}
