import * as core from "@terrascript/core";
export interface VpcSettingsArgs extends core.SchemaArgs {
    availabilityZones: core.Array<string> | core.ArrayOut<core.StringOut>;
    subnetIds: core.Array<string> | core.ArrayOut<core.StringOut>;
    vpcId: string | core.StringOut;
}
export declare class VpcSettings extends core.Schema<VpcSettingsArgs> {
    availabilityZones: core.Array<string> | core.ArrayOut<core.StringOut>;
    subnetIds: core.Array<string> | core.ArrayOut<core.StringOut>;
    vpcId: string | core.StringOut;
}
export interface ConnectSettingsArgs extends core.SchemaArgs {
    availabilityZones: core.Array<string> | core.ArrayOut<core.StringOut>;
    connectIps: core.Array<string> | core.ArrayOut<core.StringOut>;
    customerDnsIps: core.Array<string> | core.ArrayOut<core.StringOut>;
    customerUsername: string | core.StringOut;
    subnetIds: core.Array<string> | core.ArrayOut<core.StringOut>;
    vpcId: string | core.StringOut;
}
export declare class ConnectSettings extends core.Schema<ConnectSettingsArgs> {
    availabilityZones: core.Array<string> | core.ArrayOut<core.StringOut>;
    connectIps: core.Array<string> | core.ArrayOut<core.StringOut>;
    customerDnsIps: core.Array<string> | core.ArrayOut<core.StringOut>;
    customerUsername: string | core.StringOut;
    subnetIds: core.Array<string> | core.ArrayOut<core.StringOut>;
    vpcId: string | core.StringOut;
}
export interface DirectoryServiceDirectoryArgs extends core.ResourceArgs {
    alias?: string | core.StringOut;
    connectSettings?: ConnectSettings;
    description?: string | core.StringOut;
    desiredNumberOfDomainControllers?: number | core.NumberOut;
    edition?: string | core.StringOut;
    enableSso?: boolean | core.BooleanOut;
    name: string | core.StringOut;
    password: string | core.StringOut;
    shortName?: string | core.StringOut;
    size?: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    type?: string | core.StringOut;
    vpcSettings?: VpcSettings;
}
export declare class DirectoryServiceDirectory extends core.Resource<DirectoryServiceDirectoryArgs> {
    accessUrl: string | core.StringOut;
    alias?: string | core.StringOut;
    connectSettings?: ConnectSettings;
    description?: string | core.StringOut;
    desiredNumberOfDomainControllers?: number | core.NumberOut;
    dnsIpAddresses: core.Array<string> | core.ArrayOut<core.StringOut>;
    edition?: string | core.StringOut;
    enableSso?: boolean | core.BooleanOut;
    id: string | core.StringOut;
    name: string | core.StringOut;
    password: string | core.StringOut;
    securityGroupId: string | core.StringOut;
    shortName?: string | core.StringOut;
    size?: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    type?: string | core.StringOut;
    vpcSettings?: VpcSettings;
    constructor(name: string, args?: DirectoryServiceDirectoryArgs);
    getNamespace(): string;
}
//# sourceMappingURL=directory_service_directory.d.ts.map