import * as core from "@terrascript/core";
export interface HealthCheckConfigArgs extends core.SchemaArgs {
    failureThreshold: number | core.NumberOut;
    resourcePath: string | core.StringOut;
    type: string | core.StringOut;
}
export declare class HealthCheckConfig extends core.Schema<HealthCheckConfigArgs> {
    failureThreshold: number | core.NumberOut;
    resourcePath: string | core.StringOut;
    type: string | core.StringOut;
}
export interface DnsRecordsArgs extends core.SchemaArgs {
    ttl: number | core.NumberOut;
    type: string | core.StringOut;
}
export declare class DnsRecords extends core.Schema<DnsRecordsArgs> {
    ttl: number | core.NumberOut;
    type: string | core.StringOut;
}
export interface DnsConfigArgs extends core.SchemaArgs {
    dnsRecords: core.Array<DnsRecords> | core.ArrayOut<DnsRecords>;
    namespaceId: string | core.StringOut;
    routingPolicy: string | core.StringOut;
}
export declare class DnsConfig extends core.Schema<DnsConfigArgs> {
    dnsRecords: core.Array<DnsRecords> | core.ArrayOut<DnsRecords>;
    namespaceId: string | core.StringOut;
    routingPolicy: string | core.StringOut;
}
export interface HealthCheckCustomConfigArgs extends core.SchemaArgs {
    failureThreshold: number | core.NumberOut;
}
export declare class HealthCheckCustomConfig extends core.Schema<HealthCheckCustomConfigArgs> {
    failureThreshold: number | core.NumberOut;
}
export interface DsServiceDiscoveryServiceArgs {
    name: string | core.StringOut;
    namespaceId: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
}
export declare class DsServiceDiscoveryService extends core.Data<DsServiceDiscoveryServiceArgs> {
    arn: string | core.StringOut;
    description: string | core.StringOut;
    dnsConfig: core.Array<DnsConfig> | core.ArrayOut<DnsConfig>;
    healthCheckConfig: core.Array<HealthCheckConfig> | core.ArrayOut<HealthCheckConfig>;
    healthCheckCustomConfig: core.Array<HealthCheckCustomConfig> | core.ArrayOut<HealthCheckCustomConfig>;
    id: string | core.StringOut;
    name: string | core.StringOut;
    namespaceId: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    constructor(name: string, args?: DsServiceDiscoveryServiceArgs);
    getNamespace(): string;
}
//# sourceMappingURL=ds_service_discovery_service.d.ts.map