import { Request, GameLift as AWSGameLift } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSGameLift> = AWSGameLift[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSGameLift, Extras> = AWSGameLift[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class GameLift {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "gamelift";
    readonly global: false;
    readonly category: "Game Tech";
    readonly topLevelCalls: readonly ["describeFleetAttributes", "describeFleetCapacity", "describeFleetUtilization", "describeGameSessionDetails", "describeGameSessionQueues", "describeGameSessions", "describeMatchmakingConfigurations", "describeMatchmakingRuleSets", "describePlayerSessions", "listAliases", "listBuilds", "listFleets", "listGameServerGroups", "listScripts", "searchGameSessions"];
    acceptMatch: (params: ParamsFrom<'acceptMatch', Record<string, never>>) => Promise<ReturnTypeFrom<'acceptMatch'>>;
    claimGameServer: (params: ParamsFrom<'claimGameServer', Record<string, never>>) => Promise<ReturnTypeFrom<'claimGameServer'>>;
    createAlias: (params: ParamsFrom<'createAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'createAlias'>>;
    createBuild: (params: ParamsFrom<'createBuild', Record<string, never>>) => Promise<ReturnTypeFrom<'createBuild'>>;
    createFleet: (params: ParamsFrom<'createFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'createFleet'>>;
    createFleetLocations: (params: ParamsFrom<'createFleetLocations', Record<string, never>>) => Promise<ReturnTypeFrom<'createFleetLocations'>>;
    createGameServerGroup: (params: ParamsFrom<'createGameServerGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'createGameServerGroup'>>;
    createGameSession: (params: ParamsFrom<'createGameSession', Record<string, never>>) => Promise<ReturnTypeFrom<'createGameSession'>>;
    createGameSessionQueue: (params: ParamsFrom<'createGameSessionQueue', Record<string, never>>) => Promise<ReturnTypeFrom<'createGameSessionQueue'>>;
    createMatchmakingConfiguration: (params: ParamsFrom<'createMatchmakingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'createMatchmakingConfiguration'>>;
    createMatchmakingRuleSet: (params: ParamsFrom<'createMatchmakingRuleSet', Record<string, never>>) => Promise<ReturnTypeFrom<'createMatchmakingRuleSet'>>;
    createPlayerSession: (params: ParamsFrom<'createPlayerSession', Record<string, never>>) => Promise<ReturnTypeFrom<'createPlayerSession'>>;
    createPlayerSessions: (params: ParamsFrom<'createPlayerSessions', Record<string, never>>) => Promise<ReturnTypeFrom<'createPlayerSessions'>>;
    createScript: (params: ParamsFrom<'createScript', Record<string, never>>) => Promise<ReturnTypeFrom<'createScript'>>;
    createVpcPeeringAuthorization: (params: ParamsFrom<'createVpcPeeringAuthorization', Record<string, never>>) => Promise<ReturnTypeFrom<'createVpcPeeringAuthorization'>>;
    createVpcPeeringConnection: (params: ParamsFrom<'createVpcPeeringConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'createVpcPeeringConnection'>>;
    deleteAlias: (params: ParamsFrom<'deleteAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteAlias'>>;
    deleteBuild: (params: ParamsFrom<'deleteBuild', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteBuild'>>;
    deleteFleet: (params: ParamsFrom<'deleteFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFleet'>>;
    deleteFleetLocations: (params: ParamsFrom<'deleteFleetLocations', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFleetLocations'>>;
    deleteGameServerGroup: (params: ParamsFrom<'deleteGameServerGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteGameServerGroup'>>;
    deleteGameSessionQueue: (params: ParamsFrom<'deleteGameSessionQueue', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteGameSessionQueue'>>;
    deleteMatchmakingConfiguration: (params: ParamsFrom<'deleteMatchmakingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteMatchmakingConfiguration'>>;
    deleteMatchmakingRuleSet: (params: ParamsFrom<'deleteMatchmakingRuleSet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteMatchmakingRuleSet'>>;
    deleteScalingPolicy: (params: ParamsFrom<'deleteScalingPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteScalingPolicy'>>;
    deleteScript: (params: ParamsFrom<'deleteScript', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteScript'>>;
    deleteVpcPeeringAuthorization: (params: ParamsFrom<'deleteVpcPeeringAuthorization', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteVpcPeeringAuthorization'>>;
    deleteVpcPeeringConnection: (params: ParamsFrom<'deleteVpcPeeringConnection', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteVpcPeeringConnection'>>;
    deregisterGameServer: (params: ParamsFrom<'deregisterGameServer', Record<string, never>>) => Promise<ReturnTypeFrom<'deregisterGameServer'>>;
    describeAlias: (params: ParamsFrom<'describeAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'describeAlias'>>;
    describeBuild: (params: ParamsFrom<'describeBuild', Record<string, never>>) => Promise<ReturnTypeFrom<'describeBuild'>>;
    describeEC2InstanceLimits: (params: ParamsFrom<'describeEC2InstanceLimits', Record<string, never>>) => Promise<ReturnTypeFrom<'describeEC2InstanceLimits'>>;
    describeFleetAttributes(params: {
        [K in keyof ParamsFrom<'describeFleetAttributes', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeFleetAttributes', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeFleetAttributes'>]-?: ReturnTypeFrom<'describeFleetAttributes'>[K];
        }['FleetAttributes'];
    }>;
    describeFleetCapacity(params: {
        [K in keyof ParamsFrom<'describeFleetCapacity', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeFleetCapacity', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeFleetCapacity'>]-?: ReturnTypeFrom<'describeFleetCapacity'>[K];
        }['FleetCapacity'];
    }>;
    describeFleetEvents(params: {
        [K in keyof ParamsFrom<'describeFleetEvents', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeFleetEvents', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeFleetEvents'>]-?: ReturnTypeFrom<'describeFleetEvents'>[K];
        }['Events'];
    }>;
    describeFleetLocationAttributes: (params: ParamsFrom<'describeFleetLocationAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'describeFleetLocationAttributes'>>;
    describeFleetLocationCapacity: (params: ParamsFrom<'describeFleetLocationCapacity', Record<string, never>>) => Promise<ReturnTypeFrom<'describeFleetLocationCapacity'>>;
    describeFleetLocationUtilization: (params: ParamsFrom<'describeFleetLocationUtilization', Record<string, never>>) => Promise<ReturnTypeFrom<'describeFleetLocationUtilization'>>;
    describeFleetPortSettings: (params: ParamsFrom<'describeFleetPortSettings', Record<string, never>>) => Promise<ReturnTypeFrom<'describeFleetPortSettings'>>;
    describeFleetUtilization(params: {
        [K in keyof ParamsFrom<'describeFleetUtilization', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeFleetUtilization', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeFleetUtilization'>]-?: ReturnTypeFrom<'describeFleetUtilization'>[K];
        }['FleetUtilization'];
    }>;
    describeGameServer: (params: ParamsFrom<'describeGameServer', Record<string, never>>) => Promise<ReturnTypeFrom<'describeGameServer'>>;
    describeGameServerGroup: (params: ParamsFrom<'describeGameServerGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'describeGameServerGroup'>>;
    describeGameServerInstances(params: {
        [K in keyof ParamsFrom<'describeGameServerInstances', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeGameServerInstances', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeGameServerInstances'>]-?: ReturnTypeFrom<'describeGameServerInstances'>[K];
        }['GameServerInstances'];
    }>;
    describeGameSessionDetails(params: {
        [K in keyof ParamsFrom<'describeGameSessionDetails', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeGameSessionDetails', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeGameSessionDetails'>]-?: ReturnTypeFrom<'describeGameSessionDetails'>[K];
        }['GameSessionDetails'];
    }>;
    describeGameSessionPlacement: (params: ParamsFrom<'describeGameSessionPlacement', Record<string, never>>) => Promise<ReturnTypeFrom<'describeGameSessionPlacement'>>;
    describeGameSessionQueues(params: {
        [K in keyof ParamsFrom<'describeGameSessionQueues', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeGameSessionQueues', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeGameSessionQueues'>]-?: ReturnTypeFrom<'describeGameSessionQueues'>[K];
        }['GameSessionQueues'];
    }>;
    describeGameSessions(params: {
        [K in keyof ParamsFrom<'describeGameSessions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeGameSessions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeGameSessions'>]-?: ReturnTypeFrom<'describeGameSessions'>[K];
        }['GameSessions'];
    }>;
    describeInstances(params: {
        [K in keyof ParamsFrom<'describeInstances', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeInstances', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeInstances'>]-?: ReturnTypeFrom<'describeInstances'>[K];
        }['Instances'];
    }>;
    describeMatchmaking: (params: ParamsFrom<'describeMatchmaking', Record<string, never>>) => Promise<ReturnTypeFrom<'describeMatchmaking'>>;
    describeMatchmakingConfigurations(params: {
        [K in keyof ParamsFrom<'describeMatchmakingConfigurations', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeMatchmakingConfigurations', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeMatchmakingConfigurations'>]-?: ReturnTypeFrom<'describeMatchmakingConfigurations'>[K];
        }['Configurations'];
    }>;
    describeMatchmakingRuleSets(params: {
        [K in keyof ParamsFrom<'describeMatchmakingRuleSets', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeMatchmakingRuleSets', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeMatchmakingRuleSets'>]-?: ReturnTypeFrom<'describeMatchmakingRuleSets'>[K];
        }['RuleSets'];
    }>;
    describePlayerSessions(params: {
        [K in keyof ParamsFrom<'describePlayerSessions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describePlayerSessions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describePlayerSessions'>]-?: ReturnTypeFrom<'describePlayerSessions'>[K];
        }['PlayerSessions'];
    }>;
    describeRuntimeConfiguration: (params: ParamsFrom<'describeRuntimeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'describeRuntimeConfiguration'>>;
    describeScalingPolicies(params: {
        [K in keyof ParamsFrom<'describeScalingPolicies', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeScalingPolicies', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeScalingPolicies'>]-?: ReturnTypeFrom<'describeScalingPolicies'>[K];
        }['ScalingPolicies'];
    }>;
    describeScript: (params: ParamsFrom<'describeScript', Record<string, never>>) => Promise<ReturnTypeFrom<'describeScript'>>;
    describeVpcPeeringAuthorizations: (params: ParamsFrom<'describeVpcPeeringAuthorizations', Record<string, never>>) => Promise<ReturnTypeFrom<'describeVpcPeeringAuthorizations'>>;
    describeVpcPeeringConnections: (params: ParamsFrom<'describeVpcPeeringConnections', Record<string, never>>) => Promise<ReturnTypeFrom<'describeVpcPeeringConnections'>>;
    getGameSessionLogUrl: (params: ParamsFrom<'getGameSessionLogUrl', Record<string, never>>) => Promise<ReturnTypeFrom<'getGameSessionLogUrl'>>;
    getInstanceAccess: (params: ParamsFrom<'getInstanceAccess', Record<string, never>>) => Promise<ReturnTypeFrom<'getInstanceAccess'>>;
    listAliases(params: {
        [K in keyof ParamsFrom<'listAliases', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listAliases', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listAliases'>]-?: ReturnTypeFrom<'listAliases'>[K];
        }['Aliases'];
    }>;
    listBuilds(params: {
        [K in keyof ParamsFrom<'listBuilds', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listBuilds', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listBuilds'>]-?: ReturnTypeFrom<'listBuilds'>[K];
        }['Builds'];
    }>;
    listFleets(params: {
        [K in keyof ParamsFrom<'listFleets', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listFleets', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listFleets'>]-?: ReturnTypeFrom<'listFleets'>[K];
        }['FleetIds'];
    }>;
    listGameServerGroups(params: {
        [K in keyof ParamsFrom<'listGameServerGroups', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listGameServerGroups', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listGameServerGroups'>]-?: ReturnTypeFrom<'listGameServerGroups'>[K];
        }['GameServerGroups'];
    }>;
    listGameServers(params: {
        [K in keyof ParamsFrom<'listGameServers', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listGameServers', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listGameServers'>]-?: ReturnTypeFrom<'listGameServers'>[K];
        }['GameServers'];
    }>;
    listScripts(params: {
        [K in keyof ParamsFrom<'listScripts', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listScripts', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listScripts'>]-?: ReturnTypeFrom<'listScripts'>[K];
        }['Scripts'];
    }>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    putScalingPolicy: (params: ParamsFrom<'putScalingPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'putScalingPolicy'>>;
    registerGameServer: (params: ParamsFrom<'registerGameServer', Record<string, never>>) => Promise<ReturnTypeFrom<'registerGameServer'>>;
    requestUploadCredentials: (params: ParamsFrom<'requestUploadCredentials', Record<string, never>>) => Promise<ReturnTypeFrom<'requestUploadCredentials'>>;
    resolveAlias: (params: ParamsFrom<'resolveAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'resolveAlias'>>;
    resumeGameServerGroup: (params: ParamsFrom<'resumeGameServerGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'resumeGameServerGroup'>>;
    searchGameSessions(params: {
        [K in keyof ParamsFrom<'searchGameSessions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'searchGameSessions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'searchGameSessions'>]-?: ReturnTypeFrom<'searchGameSessions'>[K];
        }['GameSessions'];
    }>;
    startFleetActions: (params: ParamsFrom<'startFleetActions', Record<string, never>>) => Promise<ReturnTypeFrom<'startFleetActions'>>;
    startGameSessionPlacement: (params: ParamsFrom<'startGameSessionPlacement', Record<string, never>>) => Promise<ReturnTypeFrom<'startGameSessionPlacement'>>;
    startMatchBackfill: (params: ParamsFrom<'startMatchBackfill', Record<string, never>>) => Promise<ReturnTypeFrom<'startMatchBackfill'>>;
    startMatchmaking: (params: ParamsFrom<'startMatchmaking', Record<string, never>>) => Promise<ReturnTypeFrom<'startMatchmaking'>>;
    stopFleetActions: (params: ParamsFrom<'stopFleetActions', Record<string, never>>) => Promise<ReturnTypeFrom<'stopFleetActions'>>;
    stopGameSessionPlacement: (params: ParamsFrom<'stopGameSessionPlacement', Record<string, never>>) => Promise<ReturnTypeFrom<'stopGameSessionPlacement'>>;
    stopMatchmaking: (params: ParamsFrom<'stopMatchmaking', Record<string, never>>) => Promise<ReturnTypeFrom<'stopMatchmaking'>>;
    suspendGameServerGroup: (params: ParamsFrom<'suspendGameServerGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'suspendGameServerGroup'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateAlias: (params: ParamsFrom<'updateAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'updateAlias'>>;
    updateBuild: (params: ParamsFrom<'updateBuild', Record<string, never>>) => Promise<ReturnTypeFrom<'updateBuild'>>;
    updateFleetAttributes: (params: ParamsFrom<'updateFleetAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFleetAttributes'>>;
    updateFleetCapacity: (params: ParamsFrom<'updateFleetCapacity', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFleetCapacity'>>;
    updateFleetPortSettings: (params: ParamsFrom<'updateFleetPortSettings', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFleetPortSettings'>>;
    updateGameServer: (params: ParamsFrom<'updateGameServer', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGameServer'>>;
    updateGameServerGroup: (params: ParamsFrom<'updateGameServerGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGameServerGroup'>>;
    updateGameSession: (params: ParamsFrom<'updateGameSession', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGameSession'>>;
    updateGameSessionQueue: (params: ParamsFrom<'updateGameSessionQueue', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGameSessionQueue'>>;
    updateMatchmakingConfiguration: (params: ParamsFrom<'updateMatchmakingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateMatchmakingConfiguration'>>;
    updateRuntimeConfiguration: (params: ParamsFrom<'updateRuntimeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateRuntimeConfiguration'>>;
    updateScript: (params: ParamsFrom<'updateScript', Record<string, never>>) => Promise<ReturnTypeFrom<'updateScript'>>;
    validateMatchmakingRuleSet: (params: ParamsFrom<'validateMatchmakingRuleSet', Record<string, never>>) => Promise<ReturnTypeFrom<'validateMatchmakingRuleSet'>>;
    static fromClient(client: AWSGameLift): GameLift;
    static client(options?: AWSGameLift.Types.ClientConfiguration): GameLift;
}
export {};
