import { Request, WellArchitected as AWSWellArchitected } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSWellArchitected> = AWSWellArchitected[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSWellArchitected, Extras> = AWSWellArchitected[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class WellArchitected {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "wellarchitected";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly ["listLenses", "listNotifications", "listShareInvitations", "listWorkloads"];
    associateLenses: (params: ParamsFrom<'associateLenses', Record<string, never>>) => Promise<ReturnTypeFrom<'associateLenses'>>;
    createLensShare: (params: ParamsFrom<'createLensShare', Record<string, never>>) => Promise<ReturnTypeFrom<'createLensShare'>>;
    createLensVersion: (params: ParamsFrom<'createLensVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createLensVersion'>>;
    createMilestone: (params: ParamsFrom<'createMilestone', Record<string, never>>) => Promise<ReturnTypeFrom<'createMilestone'>>;
    createWorkload: (params: ParamsFrom<'createWorkload', Record<string, never>>) => Promise<ReturnTypeFrom<'createWorkload'>>;
    createWorkloadShare: (params: ParamsFrom<'createWorkloadShare', Record<string, never>>) => Promise<ReturnTypeFrom<'createWorkloadShare'>>;
    deleteLens: (params: ParamsFrom<'deleteLens', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLens'>>;
    deleteLensShare: (params: ParamsFrom<'deleteLensShare', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLensShare'>>;
    deleteWorkload: (params: ParamsFrom<'deleteWorkload', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteWorkload'>>;
    deleteWorkloadShare: (params: ParamsFrom<'deleteWorkloadShare', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteWorkloadShare'>>;
    disassociateLenses: (params: ParamsFrom<'disassociateLenses', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateLenses'>>;
    exportLens: (params: ParamsFrom<'exportLens', Record<string, never>>) => Promise<ReturnTypeFrom<'exportLens'>>;
    getAnswer: (params: ParamsFrom<'getAnswer', Record<string, never>>) => Promise<ReturnTypeFrom<'getAnswer'>>;
    getLens: (params: ParamsFrom<'getLens', Record<string, never>>) => Promise<ReturnTypeFrom<'getLens'>>;
    getLensReview: (params: ParamsFrom<'getLensReview', Record<string, never>>) => Promise<ReturnTypeFrom<'getLensReview'>>;
    getLensReviewReport: (params: ParamsFrom<'getLensReviewReport', Record<string, never>>) => Promise<ReturnTypeFrom<'getLensReviewReport'>>;
    getLensVersionDifference: (params: ParamsFrom<'getLensVersionDifference', Record<string, never>>) => Promise<ReturnTypeFrom<'getLensVersionDifference'>>;
    getMilestone: (params: ParamsFrom<'getMilestone', Record<string, never>>) => Promise<ReturnTypeFrom<'getMilestone'>>;
    getWorkload: (params: ParamsFrom<'getWorkload', Record<string, never>>) => Promise<ReturnTypeFrom<'getWorkload'>>;
    importLens: (params: ParamsFrom<'importLens', Record<string, never>>) => Promise<ReturnTypeFrom<'importLens'>>;
    listAnswers: (params: ParamsFrom<'listAnswers', Record<string, never>>) => Promise<ReturnTypeFrom<'listAnswers'>>;
    listLensReviewImprovements: (params: ParamsFrom<'listLensReviewImprovements', Record<string, never>>) => Promise<ReturnTypeFrom<'listLensReviewImprovements'>>;
    listLensReviews: (params: ParamsFrom<'listLensReviews', Record<string, never>>) => Promise<ReturnTypeFrom<'listLensReviews'>>;
    listLensShares: (params: ParamsFrom<'listLensShares', Record<string, never>>) => Promise<ReturnTypeFrom<'listLensShares'>>;
    listLenses: (params: ParamsFrom<'listLenses', Record<string, never>>) => Promise<ReturnTypeFrom<'listLenses'>>;
    listMilestones: (params: ParamsFrom<'listMilestones', Record<string, never>>) => Promise<ReturnTypeFrom<'listMilestones'>>;
    listNotifications: (params: ParamsFrom<'listNotifications', Record<string, never>>) => Promise<ReturnTypeFrom<'listNotifications'>>;
    listShareInvitations: (params: ParamsFrom<'listShareInvitations', Record<string, never>>) => Promise<ReturnTypeFrom<'listShareInvitations'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    listWorkloadShares: (params: ParamsFrom<'listWorkloadShares', Record<string, never>>) => Promise<ReturnTypeFrom<'listWorkloadShares'>>;
    listWorkloads: (params: ParamsFrom<'listWorkloads', Record<string, never>>) => Promise<ReturnTypeFrom<'listWorkloads'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateAnswer: (params: ParamsFrom<'updateAnswer', Record<string, never>>) => Promise<ReturnTypeFrom<'updateAnswer'>>;
    updateGlobalSettings: (params: ParamsFrom<'updateGlobalSettings', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGlobalSettings'>>;
    updateLensReview: (params: ParamsFrom<'updateLensReview', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLensReview'>>;
    updateShareInvitation: (params: ParamsFrom<'updateShareInvitation', Record<string, never>>) => Promise<ReturnTypeFrom<'updateShareInvitation'>>;
    updateWorkload: (params: ParamsFrom<'updateWorkload', Record<string, never>>) => Promise<ReturnTypeFrom<'updateWorkload'>>;
    updateWorkloadShare: (params: ParamsFrom<'updateWorkloadShare', Record<string, never>>) => Promise<ReturnTypeFrom<'updateWorkloadShare'>>;
    upgradeLensReview: (params: ParamsFrom<'upgradeLensReview', Record<string, never>>) => Promise<ReturnTypeFrom<'upgradeLensReview'>>;
    static fromClient(client: AWSWellArchitected): WellArchitected;
    static client(options?: AWSWellArchitected.Types.ClientConfiguration): WellArchitected;
}
export {};
