import * as core from "@terrascript/core";
export interface DnsEntryArgs extends core.SchemaArgs {
    dnsName: string | core.StringOut;
    hostedZoneId: string | core.StringOut;
}
export declare class DnsEntry extends core.Schema<DnsEntryArgs> {
    dnsName: string | core.StringOut;
    hostedZoneId: string | core.StringOut;
}
export interface DnsOptionsArgs extends core.SchemaArgs {
    dnsRecordIpType?: string | core.StringOut;
}
export declare class DnsOptions extends core.Schema<DnsOptionsArgs> {
    dnsRecordIpType?: string | core.StringOut;
}
export interface EndpointArgs extends core.ResourceArgs {
    autoAccept?: boolean | core.BooleanOut;
    dnsOptions?: DnsOptions;
    ipAddressType?: string | core.StringOut;
    policy?: string | core.StringOut;
    privateDnsEnabled?: boolean | core.BooleanOut;
    routeTableIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    securityGroupIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    serviceName: string | core.StringOut;
    subnetIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    vpcEndpointType?: string | core.StringOut;
    vpcId: string | core.StringOut;
}
export declare class Endpoint extends core.Resource<EndpointArgs> {
    arn: string | core.StringOut;
    autoAccept?: boolean | core.BooleanOut;
    cidrBlocks: core.Array<string> | core.ArrayOut<core.StringOut>;
    dnsEntry: core.Array<DnsEntry> | core.ArrayOut<DnsEntry>;
    dnsOptions?: DnsOptions;
    id: string | core.StringOut;
    ipAddressType?: string | core.StringOut;
    networkInterfaceIds: core.Array<string> | core.ArrayOut<core.StringOut>;
    ownerId: string | core.StringOut;
    policy?: string | core.StringOut;
    prefixListId: string | core.StringOut;
    privateDnsEnabled?: boolean | core.BooleanOut;
    requesterManaged: boolean | core.BooleanOut;
    routeTableIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    securityGroupIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    serviceName: string | core.StringOut;
    state: string | core.StringOut;
    subnetIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    vpcEndpointType?: string | core.StringOut;
    vpcId: string | core.StringOut;
    constructor(name: string, args?: EndpointArgs);
    getNamespace(): string;
}
//# sourceMappingURL=endpoint.d.ts.map