import { Request, ES as AWSES } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSES> = AWSES[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSES, Extras> = AWSES[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class ES {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "es";
    readonly global: false;
    readonly category: "Analytics";
    readonly topLevelCalls: readonly ["describeInboundCrossClusterSearchConnections", "describeOutboundCrossClusterSearchConnections", "describePackages", "describeReservedElasticsearchInstanceOfferings", "describeReservedElasticsearchInstances", "listElasticsearchVersions"];
    acceptInboundCrossClusterSearchConnection: (params: ParamsFrom<'acceptInboundCrossClusterSearchConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'acceptInboundCrossClusterSearchConnection'>>;
    addTags: (params: ParamsFrom<'addTags', Record<string, never>>) => Promise<ReturnTypeFrom<'addTags'>>;
    associatePackage: (params: ParamsFrom<'associatePackage', Record<string, never>>) => Promise<ReturnTypeFrom<'associatePackage'>>;
    cancelElasticsearchServiceSoftwareUpdate: (params: ParamsFrom<'cancelElasticsearchServiceSoftwareUpdate', Record<string, never>>) => Promise<ReturnTypeFrom<'cancelElasticsearchServiceSoftwareUpdate'>>;
    createElasticsearchDomain: (params: ParamsFrom<'createElasticsearchDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'createElasticsearchDomain'>>;
    createOutboundCrossClusterSearchConnection: (params: ParamsFrom<'createOutboundCrossClusterSearchConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'createOutboundCrossClusterSearchConnection'>>;
    createPackage: (params: ParamsFrom<'createPackage', Record<string, never>>) => Promise<ReturnTypeFrom<'createPackage'>>;
    deleteElasticsearchDomain: (params: ParamsFrom<'deleteElasticsearchDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteElasticsearchDomain'>>;
    deleteElasticsearchServiceRole: (params: ParamsFrom<'deleteElasticsearchServiceRole', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteElasticsearchServiceRole'>>;
    deleteInboundCrossClusterSearchConnection: (params: ParamsFrom<'deleteInboundCrossClusterSearchConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteInboundCrossClusterSearchConnection'>>;
    deleteOutboundCrossClusterSearchConnection: (params: ParamsFrom<'deleteOutboundCrossClusterSearchConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteOutboundCrossClusterSearchConnection'>>;
    deletePackage: (params: ParamsFrom<'deletePackage', Record<string, never>>) => Promise<ReturnTypeFrom<'deletePackage'>>;
    describeDomainAutoTunes: (params: ParamsFrom<'describeDomainAutoTunes', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDomainAutoTunes'>>;
    describeDomainChangeProgress: (params: ParamsFrom<'describeDomainChangeProgress', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDomainChangeProgress'>>;
    describeElasticsearchDomain: (params: ParamsFrom<'describeElasticsearchDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'describeElasticsearchDomain'>>;
    describeElasticsearchDomainConfig: (params: ParamsFrom<'describeElasticsearchDomainConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'describeElasticsearchDomainConfig'>>;
    describeElasticsearchDomains: (params: ParamsFrom<'describeElasticsearchDomains', Record<string, never>>) => Promise<ReturnTypeFrom<'describeElasticsearchDomains'>>;
    describeElasticsearchInstanceTypeLimits: (params: ParamsFrom<'describeElasticsearchInstanceTypeLimits', Record<string, never>>) => Promise<ReturnTypeFrom<'describeElasticsearchInstanceTypeLimits'>>;
    describeInboundCrossClusterSearchConnections: (params: ParamsFrom<'describeInboundCrossClusterSearchConnections', Record<string, never>>) => Promise<ReturnTypeFrom<'describeInboundCrossClusterSearchConnections'>>;
    describeOutboundCrossClusterSearchConnections: (params: ParamsFrom<'describeOutboundCrossClusterSearchConnections', Record<string, never>>) => Promise<ReturnTypeFrom<'describeOutboundCrossClusterSearchConnections'>>;
    describePackages: (params: ParamsFrom<'describePackages', Record<string, never>>) => Promise<ReturnTypeFrom<'describePackages'>>;
    describeReservedElasticsearchInstanceOfferings: (params: ParamsFrom<'describeReservedElasticsearchInstanceOfferings', Record<string, never>>) => Promise<ReturnTypeFrom<'describeReservedElasticsearchInstanceOfferings'>>;
    describeReservedElasticsearchInstances: (params: ParamsFrom<'describeReservedElasticsearchInstances', Record<string, never>>) => Promise<ReturnTypeFrom<'describeReservedElasticsearchInstances'>>;
    dissociatePackage: (params: ParamsFrom<'dissociatePackage', Record<string, never>>) => Promise<ReturnTypeFrom<'dissociatePackage'>>;
    getCompatibleElasticsearchVersions: (params: ParamsFrom<'getCompatibleElasticsearchVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'getCompatibleElasticsearchVersions'>>;
    getPackageVersionHistory: (params: ParamsFrom<'getPackageVersionHistory', Record<string, never>>) => Promise<ReturnTypeFrom<'getPackageVersionHistory'>>;
    getUpgradeHistory: (params: ParamsFrom<'getUpgradeHistory', Record<string, never>>) => Promise<ReturnTypeFrom<'getUpgradeHistory'>>;
    getUpgradeStatus: (params: ParamsFrom<'getUpgradeStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'getUpgradeStatus'>>;
    listDomainNames: (params: ParamsFrom<'listDomainNames', Record<string, never>>) => Promise<ReturnTypeFrom<'listDomainNames'>>;
    listDomainsForPackage: (params: ParamsFrom<'listDomainsForPackage', Record<string, never>>) => Promise<ReturnTypeFrom<'listDomainsForPackage'>>;
    listElasticsearchInstanceTypes: (params: ParamsFrom<'listElasticsearchInstanceTypes', Record<string, never>>) => Promise<ReturnTypeFrom<'listElasticsearchInstanceTypes'>>;
    listElasticsearchVersions: (params: ParamsFrom<'listElasticsearchVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listElasticsearchVersions'>>;
    listPackagesForDomain: (params: ParamsFrom<'listPackagesForDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'listPackagesForDomain'>>;
    listTags: (params: ParamsFrom<'listTags', Record<string, never>>) => Promise<ReturnTypeFrom<'listTags'>>;
    purchaseReservedElasticsearchInstanceOffering: (params: ParamsFrom<'purchaseReservedElasticsearchInstanceOffering', Record<string, never>>) => Promise<ReturnTypeFrom<'purchaseReservedElasticsearchInstanceOffering'>>;
    rejectInboundCrossClusterSearchConnection: (params: ParamsFrom<'rejectInboundCrossClusterSearchConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'rejectInboundCrossClusterSearchConnection'>>;
    removeTags: (params: ParamsFrom<'removeTags', Record<string, never>>) => Promise<ReturnTypeFrom<'removeTags'>>;
    startElasticsearchServiceSoftwareUpdate: (params: ParamsFrom<'startElasticsearchServiceSoftwareUpdate', Record<string, never>>) => Promise<ReturnTypeFrom<'startElasticsearchServiceSoftwareUpdate'>>;
    updateElasticsearchDomainConfig: (params: ParamsFrom<'updateElasticsearchDomainConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'updateElasticsearchDomainConfig'>>;
    updatePackage: (params: ParamsFrom<'updatePackage', Record<string, never>>) => Promise<ReturnTypeFrom<'updatePackage'>>;
    upgradeElasticsearchDomain: (params: ParamsFrom<'upgradeElasticsearchDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'upgradeElasticsearchDomain'>>;
    static fromClient(client: AWSES): ES;
    static client(options?: AWSES.Types.ClientConfiguration): ES;
}
export {};
