import { Request, MTurk as AWSMTurk } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSMTurk> = AWSMTurk[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSMTurk, Extras> = AWSMTurk[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class MTurk {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "mturk-requester";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly ["listBonusPayments", "listHITs", "listQualificationRequests", "listReviewableHITs", "listWorkerBlocks"];
    acceptQualificationRequest: (params: ParamsFrom<'acceptQualificationRequest', Record<string, never>>) => Promise<ReturnTypeFrom<'acceptQualificationRequest'>>;
    approveAssignment: (params: ParamsFrom<'approveAssignment', Record<string, never>>) => Promise<ReturnTypeFrom<'approveAssignment'>>;
    associateQualificationWithWorker: (params: ParamsFrom<'associateQualificationWithWorker', Record<string, never>>) => Promise<ReturnTypeFrom<'associateQualificationWithWorker'>>;
    createAdditionalAssignmentsForHIT: (params: ParamsFrom<'createAdditionalAssignmentsForHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'createAdditionalAssignmentsForHIT'>>;
    createHIT: (params: ParamsFrom<'createHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'createHIT'>>;
    createHITType: (params: ParamsFrom<'createHITType', Record<string, never>>) => Promise<ReturnTypeFrom<'createHITType'>>;
    createHITWithHITType: (params: ParamsFrom<'createHITWithHITType', Record<string, never>>) => Promise<ReturnTypeFrom<'createHITWithHITType'>>;
    createQualificationType: (params: ParamsFrom<'createQualificationType', Record<string, never>>) => Promise<ReturnTypeFrom<'createQualificationType'>>;
    createWorkerBlock: (params: ParamsFrom<'createWorkerBlock', Record<string, never>>) => Promise<ReturnTypeFrom<'createWorkerBlock'>>;
    deleteHIT: (params: ParamsFrom<'deleteHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteHIT'>>;
    deleteQualificationType: (params: ParamsFrom<'deleteQualificationType', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteQualificationType'>>;
    deleteWorkerBlock: (params: ParamsFrom<'deleteWorkerBlock', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteWorkerBlock'>>;
    disassociateQualificationFromWorker: (params: ParamsFrom<'disassociateQualificationFromWorker', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateQualificationFromWorker'>>;
    getAccountBalance: (params: ParamsFrom<'getAccountBalance', Record<string, never>>) => Promise<ReturnTypeFrom<'getAccountBalance'>>;
    getAssignment: (params: ParamsFrom<'getAssignment', Record<string, never>>) => Promise<ReturnTypeFrom<'getAssignment'>>;
    getFileUploadURL: (params: ParamsFrom<'getFileUploadURL', Record<string, never>>) => Promise<ReturnTypeFrom<'getFileUploadURL'>>;
    getHIT: (params: ParamsFrom<'getHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'getHIT'>>;
    getQualificationScore: (params: ParamsFrom<'getQualificationScore', Record<string, never>>) => Promise<ReturnTypeFrom<'getQualificationScore'>>;
    getQualificationType: (params: ParamsFrom<'getQualificationType', Record<string, never>>) => Promise<ReturnTypeFrom<'getQualificationType'>>;
    listAssignmentsForHIT: (params: ParamsFrom<'listAssignmentsForHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'listAssignmentsForHIT'>>;
    listBonusPayments: (params: ParamsFrom<'listBonusPayments', Record<string, never>>) => Promise<ReturnTypeFrom<'listBonusPayments'>>;
    listHITs: (params: ParamsFrom<'listHITs', Record<string, never>>) => Promise<ReturnTypeFrom<'listHITs'>>;
    listHITsForQualificationType: (params: ParamsFrom<'listHITsForQualificationType', Record<string, never>>) => Promise<ReturnTypeFrom<'listHITsForQualificationType'>>;
    listQualificationRequests: (params: ParamsFrom<'listQualificationRequests', Record<string, never>>) => Promise<ReturnTypeFrom<'listQualificationRequests'>>;
    listQualificationTypes: (params: ParamsFrom<'listQualificationTypes', Record<string, never>>) => Promise<ReturnTypeFrom<'listQualificationTypes'>>;
    listReviewPolicyResultsForHIT: (params: ParamsFrom<'listReviewPolicyResultsForHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'listReviewPolicyResultsForHIT'>>;
    listReviewableHITs: (params: ParamsFrom<'listReviewableHITs', Record<string, never>>) => Promise<ReturnTypeFrom<'listReviewableHITs'>>;
    listWorkerBlocks: (params: ParamsFrom<'listWorkerBlocks', Record<string, never>>) => Promise<ReturnTypeFrom<'listWorkerBlocks'>>;
    listWorkersWithQualificationType: (params: ParamsFrom<'listWorkersWithQualificationType', Record<string, never>>) => Promise<ReturnTypeFrom<'listWorkersWithQualificationType'>>;
    notifyWorkers: (params: ParamsFrom<'notifyWorkers', Record<string, never>>) => Promise<ReturnTypeFrom<'notifyWorkers'>>;
    rejectAssignment: (params: ParamsFrom<'rejectAssignment', Record<string, never>>) => Promise<ReturnTypeFrom<'rejectAssignment'>>;
    rejectQualificationRequest: (params: ParamsFrom<'rejectQualificationRequest', Record<string, never>>) => Promise<ReturnTypeFrom<'rejectQualificationRequest'>>;
    sendBonus: (params: ParamsFrom<'sendBonus', Record<string, never>>) => Promise<ReturnTypeFrom<'sendBonus'>>;
    sendTestEventNotification: (params: ParamsFrom<'sendTestEventNotification', Record<string, never>>) => Promise<ReturnTypeFrom<'sendTestEventNotification'>>;
    updateExpirationForHIT: (params: ParamsFrom<'updateExpirationForHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'updateExpirationForHIT'>>;
    updateHITReviewStatus: (params: ParamsFrom<'updateHITReviewStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'updateHITReviewStatus'>>;
    updateHITTypeOfHIT: (params: ParamsFrom<'updateHITTypeOfHIT', Record<string, never>>) => Promise<ReturnTypeFrom<'updateHITTypeOfHIT'>>;
    updateNotificationSettings: (params: ParamsFrom<'updateNotificationSettings', Record<string, never>>) => Promise<ReturnTypeFrom<'updateNotificationSettings'>>;
    updateQualificationType: (params: ParamsFrom<'updateQualificationType', Record<string, never>>) => Promise<ReturnTypeFrom<'updateQualificationType'>>;
    static fromClient(client: AWSMTurk): MTurk;
    static client(options?: AWSMTurk.Types.ClientConfiguration): MTurk;
}
export {};
