import { Request, Route53 as AWSRoute53 } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSRoute53> = AWSRoute53[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSRoute53, Extras> = AWSRoute53[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Route53 {
    private readonly client;
    private constructor();
    readonly signingRegion = "us-east-1";
    readonly service: "route53";
    readonly global: true;
    readonly category: "Networking and Content Delivery";
    readonly topLevelCalls: readonly ["listCidrCollections", "listHealthChecks", "listHostedZones", "listQueryLoggingConfigs"];
    activateKeySigningKey: (params: ParamsFrom<'activateKeySigningKey', Record<string, never>>) => Promise<ReturnTypeFrom<'activateKeySigningKey'>>;
    associateVPCWithHostedZone: (params: ParamsFrom<'associateVPCWithHostedZone', Record<string, never>>) => Promise<ReturnTypeFrom<'associateVPCWithHostedZone'>>;
    changeCidrCollection: (params: ParamsFrom<'changeCidrCollection', Record<string, never>>) => Promise<ReturnTypeFrom<'changeCidrCollection'>>;
    changeResourceRecordSets: (params: ParamsFrom<'changeResourceRecordSets', Record<string, never>>) => Promise<ReturnTypeFrom<'changeResourceRecordSets'>>;
    changeTagsForResource: (params: ParamsFrom<'changeTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'changeTagsForResource'>>;
    createCidrCollection: (params: ParamsFrom<'createCidrCollection', Record<string, never>>) => Promise<ReturnTypeFrom<'createCidrCollection'>>;
    createHealthCheck: (params: ParamsFrom<'createHealthCheck', Record<string, never>>) => Promise<ReturnTypeFrom<'createHealthCheck'>>;
    createHostedZone: (params: ParamsFrom<'createHostedZone', Record<string, never>>) => Promise<ReturnTypeFrom<'createHostedZone'>>;
    createKeySigningKey: (params: ParamsFrom<'createKeySigningKey', Record<string, never>>) => Promise<ReturnTypeFrom<'createKeySigningKey'>>;
    createQueryLoggingConfig: (params: ParamsFrom<'createQueryLoggingConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'createQueryLoggingConfig'>>;
    createReusableDelegationSet: (params: ParamsFrom<'createReusableDelegationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'createReusableDelegationSet'>>;
    createTrafficPolicy: (params: ParamsFrom<'createTrafficPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'createTrafficPolicy'>>;
    createTrafficPolicyInstance: (params: ParamsFrom<'createTrafficPolicyInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'createTrafficPolicyInstance'>>;
    createTrafficPolicyVersion: (params: ParamsFrom<'createTrafficPolicyVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createTrafficPolicyVersion'>>;
    createVPCAssociationAuthorization: (params: ParamsFrom<'createVPCAssociationAuthorization', Record<string, never>>) => Promise<ReturnTypeFrom<'createVPCAssociationAuthorization'>>;
    deactivateKeySigningKey: (params: ParamsFrom<'deactivateKeySigningKey', Record<string, never>>) => Promise<ReturnTypeFrom<'deactivateKeySigningKey'>>;
    deleteCidrCollection: (params: ParamsFrom<'deleteCidrCollection', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteCidrCollection'>>;
    deleteHealthCheck: (params: ParamsFrom<'deleteHealthCheck', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteHealthCheck'>>;
    deleteHostedZone: (params: ParamsFrom<'deleteHostedZone', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteHostedZone'>>;
    deleteKeySigningKey: (params: ParamsFrom<'deleteKeySigningKey', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteKeySigningKey'>>;
    deleteQueryLoggingConfig: (params: ParamsFrom<'deleteQueryLoggingConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteQueryLoggingConfig'>>;
    deleteReusableDelegationSet: (params: ParamsFrom<'deleteReusableDelegationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteReusableDelegationSet'>>;
    deleteTrafficPolicy: (params: ParamsFrom<'deleteTrafficPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteTrafficPolicy'>>;
    deleteTrafficPolicyInstance: (params: ParamsFrom<'deleteTrafficPolicyInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteTrafficPolicyInstance'>>;
    deleteVPCAssociationAuthorization: (params: ParamsFrom<'deleteVPCAssociationAuthorization', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteVPCAssociationAuthorization'>>;
    disableHostedZoneDNSSEC: (params: ParamsFrom<'disableHostedZoneDNSSEC', Record<string, never>>) => Promise<ReturnTypeFrom<'disableHostedZoneDNSSEC'>>;
    disassociateVPCFromHostedZone: (params: ParamsFrom<'disassociateVPCFromHostedZone', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateVPCFromHostedZone'>>;
    enableHostedZoneDNSSEC: (params: ParamsFrom<'enableHostedZoneDNSSEC', Record<string, never>>) => Promise<ReturnTypeFrom<'enableHostedZoneDNSSEC'>>;
    getAccountLimit: (params: ParamsFrom<'getAccountLimit', Record<string, never>>) => Promise<ReturnTypeFrom<'getAccountLimit'>>;
    getChange: (params: ParamsFrom<'getChange', Record<string, never>>) => Promise<ReturnTypeFrom<'getChange'>>;
    getCheckerIpRanges: (params: ParamsFrom<'getCheckerIpRanges', Record<string, never>>) => Promise<ReturnTypeFrom<'getCheckerIpRanges'>>;
    getDNSSEC: (params: ParamsFrom<'getDNSSEC', Record<string, never>>) => Promise<ReturnTypeFrom<'getDNSSEC'>>;
    getGeoLocation: (params: ParamsFrom<'getGeoLocation', Record<string, never>>) => Promise<ReturnTypeFrom<'getGeoLocation'>>;
    getHealthCheck: (params: ParamsFrom<'getHealthCheck', Record<string, never>>) => Promise<ReturnTypeFrom<'getHealthCheck'>>;
    getHealthCheckCount: (params: ParamsFrom<'getHealthCheckCount', Record<string, never>>) => Promise<ReturnTypeFrom<'getHealthCheckCount'>>;
    getHealthCheckLastFailureReason: (params: ParamsFrom<'getHealthCheckLastFailureReason', Record<string, never>>) => Promise<ReturnTypeFrom<'getHealthCheckLastFailureReason'>>;
    getHealthCheckStatus: (params: ParamsFrom<'getHealthCheckStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'getHealthCheckStatus'>>;
    getHostedZone: (params: ParamsFrom<'getHostedZone', Record<string, never>>) => Promise<ReturnTypeFrom<'getHostedZone'>>;
    getHostedZoneCount: (params: ParamsFrom<'getHostedZoneCount', Record<string, never>>) => Promise<ReturnTypeFrom<'getHostedZoneCount'>>;
    getHostedZoneLimit: (params: ParamsFrom<'getHostedZoneLimit', Record<string, never>>) => Promise<ReturnTypeFrom<'getHostedZoneLimit'>>;
    getQueryLoggingConfig: (params: ParamsFrom<'getQueryLoggingConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'getQueryLoggingConfig'>>;
    getReusableDelegationSet: (params: ParamsFrom<'getReusableDelegationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'getReusableDelegationSet'>>;
    getReusableDelegationSetLimit: (params: ParamsFrom<'getReusableDelegationSetLimit', Record<string, never>>) => Promise<ReturnTypeFrom<'getReusableDelegationSetLimit'>>;
    getTrafficPolicy: (params: ParamsFrom<'getTrafficPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'getTrafficPolicy'>>;
    getTrafficPolicyInstance: (params: ParamsFrom<'getTrafficPolicyInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'getTrafficPolicyInstance'>>;
    getTrafficPolicyInstanceCount: (params: ParamsFrom<'getTrafficPolicyInstanceCount', Record<string, never>>) => Promise<ReturnTypeFrom<'getTrafficPolicyInstanceCount'>>;
    listCidrBlocks(params: {
        [K in keyof ParamsFrom<'listCidrBlocks', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listCidrBlocks', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listCidrBlocks'>]-?: ReturnTypeFrom<'listCidrBlocks'>[K];
        }['CidrBlocks'];
    }>;
    listCidrCollections(params: {
        [K in keyof ParamsFrom<'listCidrCollections', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listCidrCollections', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listCidrCollections'>]-?: ReturnTypeFrom<'listCidrCollections'>[K];
        }['CidrCollections'];
    }>;
    listCidrLocations(params: {
        [K in keyof ParamsFrom<'listCidrLocations', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listCidrLocations', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listCidrLocations'>]-?: ReturnTypeFrom<'listCidrLocations'>[K];
        }['CidrLocations'];
    }>;
    listGeoLocations: (params: ParamsFrom<'listGeoLocations', Record<string, never>>) => Promise<ReturnTypeFrom<'listGeoLocations'>>;
    listHealthChecks(params: {
        [K in keyof ParamsFrom<'listHealthChecks', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listHealthChecks', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listHealthChecks'>]-?: ReturnTypeFrom<'listHealthChecks'>[K];
        }['HealthChecks'];
    }>;
    listHostedZones(params: {
        [K in keyof ParamsFrom<'listHostedZones', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listHostedZones', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listHostedZones'>]-?: ReturnTypeFrom<'listHostedZones'>[K];
        }['HostedZones'];
    }>;
    listHostedZonesByName: (params: ParamsFrom<'listHostedZonesByName', Record<string, never>>) => Promise<ReturnTypeFrom<'listHostedZonesByName'>>;
    listHostedZonesByVPC: (params: ParamsFrom<'listHostedZonesByVPC', Record<string, never>>) => Promise<ReturnTypeFrom<'listHostedZonesByVPC'>>;
    listQueryLoggingConfigs(params: {
        [K in keyof ParamsFrom<'listQueryLoggingConfigs', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listQueryLoggingConfigs', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listQueryLoggingConfigs'>]-?: ReturnTypeFrom<'listQueryLoggingConfigs'>[K];
        }['QueryLoggingConfigs'];
    }>;
    listResourceRecordSets: (params: ParamsFrom<'listResourceRecordSets', Record<string, never>>) => Promise<ReturnTypeFrom<'listResourceRecordSets'>>;
    listReusableDelegationSets: (params: ParamsFrom<'listReusableDelegationSets', Record<string, never>>) => Promise<ReturnTypeFrom<'listReusableDelegationSets'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    listTagsForResources: (params: ParamsFrom<'listTagsForResources', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResources'>>;
    listTrafficPolicies: (params: ParamsFrom<'listTrafficPolicies', Record<string, never>>) => Promise<ReturnTypeFrom<'listTrafficPolicies'>>;
    listTrafficPolicyInstances: (params: ParamsFrom<'listTrafficPolicyInstances', Record<string, never>>) => Promise<ReturnTypeFrom<'listTrafficPolicyInstances'>>;
    listTrafficPolicyInstancesByHostedZone: (params: ParamsFrom<'listTrafficPolicyInstancesByHostedZone', Record<string, never>>) => Promise<ReturnTypeFrom<'listTrafficPolicyInstancesByHostedZone'>>;
    listTrafficPolicyInstancesByPolicy: (params: ParamsFrom<'listTrafficPolicyInstancesByPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'listTrafficPolicyInstancesByPolicy'>>;
    listTrafficPolicyVersions: (params: ParamsFrom<'listTrafficPolicyVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listTrafficPolicyVersions'>>;
    listVPCAssociationAuthorizations: (params: ParamsFrom<'listVPCAssociationAuthorizations', Record<string, never>>) => Promise<ReturnTypeFrom<'listVPCAssociationAuthorizations'>>;
    testDNSAnswer: (params: ParamsFrom<'testDNSAnswer', Record<string, never>>) => Promise<ReturnTypeFrom<'testDNSAnswer'>>;
    updateHealthCheck: (params: ParamsFrom<'updateHealthCheck', Record<string, never>>) => Promise<ReturnTypeFrom<'updateHealthCheck'>>;
    updateHostedZoneComment: (params: ParamsFrom<'updateHostedZoneComment', Record<string, never>>) => Promise<ReturnTypeFrom<'updateHostedZoneComment'>>;
    updateTrafficPolicyComment: (params: ParamsFrom<'updateTrafficPolicyComment', Record<string, never>>) => Promise<ReturnTypeFrom<'updateTrafficPolicyComment'>>;
    updateTrafficPolicyInstance: (params: ParamsFrom<'updateTrafficPolicyInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'updateTrafficPolicyInstance'>>;
    static fromClient(client: AWSRoute53): Route53;
    static client(options?: AWSRoute53.Types.ClientConfiguration): Route53;
}
export {};
