import { Request, Outposts as AWSOutposts } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSOutposts> = AWSOutposts[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSOutposts, Extras> = AWSOutposts[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Outposts {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "outposts";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly ["listCatalogItems", "listOrders", "listOutposts", "listSites"];
    cancelOrder: (params: ParamsFrom<'cancelOrder', Record<string, never>>) => Promise<ReturnTypeFrom<'cancelOrder'>>;
    createOrder: (params: ParamsFrom<'createOrder', Record<string, never>>) => Promise<ReturnTypeFrom<'createOrder'>>;
    createOutpost: (params: ParamsFrom<'createOutpost', Record<string, never>>) => Promise<ReturnTypeFrom<'createOutpost'>>;
    createSite: (params: ParamsFrom<'createSite', Record<string, never>>) => Promise<ReturnTypeFrom<'createSite'>>;
    deleteOutpost: (params: ParamsFrom<'deleteOutpost', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteOutpost'>>;
    deleteSite: (params: ParamsFrom<'deleteSite', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteSite'>>;
    getCatalogItem: (params: ParamsFrom<'getCatalogItem', Record<string, never>>) => Promise<ReturnTypeFrom<'getCatalogItem'>>;
    getConnection: (params: ParamsFrom<'getConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'getConnection'>>;
    getOrder: (params: ParamsFrom<'getOrder', Record<string, never>>) => Promise<ReturnTypeFrom<'getOrder'>>;
    getOutpost: (params: ParamsFrom<'getOutpost', Record<string, never>>) => Promise<ReturnTypeFrom<'getOutpost'>>;
    getOutpostInstanceTypes: (params: ParamsFrom<'getOutpostInstanceTypes', Record<string, never>>) => Promise<ReturnTypeFrom<'getOutpostInstanceTypes'>>;
    getSite: (params: ParamsFrom<'getSite', Record<string, never>>) => Promise<ReturnTypeFrom<'getSite'>>;
    getSiteAddress: (params: ParamsFrom<'getSiteAddress', Record<string, never>>) => Promise<ReturnTypeFrom<'getSiteAddress'>>;
    listAssets: (params: ParamsFrom<'listAssets', Record<string, never>>) => Promise<ReturnTypeFrom<'listAssets'>>;
    listCatalogItems: (params: ParamsFrom<'listCatalogItems', Record<string, never>>) => Promise<ReturnTypeFrom<'listCatalogItems'>>;
    listOrders: (params: ParamsFrom<'listOrders', Record<string, never>>) => Promise<ReturnTypeFrom<'listOrders'>>;
    listOutposts: (params: ParamsFrom<'listOutposts', Record<string, never>>) => Promise<ReturnTypeFrom<'listOutposts'>>;
    listSites: (params: ParamsFrom<'listSites', Record<string, never>>) => Promise<ReturnTypeFrom<'listSites'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    startConnection: (params: ParamsFrom<'startConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'startConnection'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateOutpost: (params: ParamsFrom<'updateOutpost', Record<string, never>>) => Promise<ReturnTypeFrom<'updateOutpost'>>;
    updateSite: (params: ParamsFrom<'updateSite', Record<string, never>>) => Promise<ReturnTypeFrom<'updateSite'>>;
    updateSiteAddress: (params: ParamsFrom<'updateSiteAddress', Record<string, never>>) => Promise<ReturnTypeFrom<'updateSiteAddress'>>;
    updateSiteRackPhysicalProperties: (params: ParamsFrom<'updateSiteRackPhysicalProperties', Record<string, never>>) => Promise<ReturnTypeFrom<'updateSiteRackPhysicalProperties'>>;
    static fromClient(client: AWSOutposts): Outposts;
    static client(options?: AWSOutposts.Types.ClientConfiguration): Outposts;
}
export {};
