import { Request, AppStream as AWSAppStream } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSAppStream> = AWSAppStream[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSAppStream, Extras> = AWSAppStream[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class AppStream {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "appstream2";
    readonly global: false;
    readonly category: "End User Computing";
    readonly topLevelCalls: readonly ["describeImages"];
    associateApplicationFleet: (params: ParamsFrom<'associateApplicationFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'associateApplicationFleet'>>;
    associateApplicationToEntitlement: (params: ParamsFrom<'associateApplicationToEntitlement', Record<string, never>>) => Promise<ReturnTypeFrom<'associateApplicationToEntitlement'>>;
    associateFleet: (params: ParamsFrom<'associateFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'associateFleet'>>;
    batchAssociateUserStack: (params: ParamsFrom<'batchAssociateUserStack', Record<string, never>>) => Promise<ReturnTypeFrom<'batchAssociateUserStack'>>;
    batchDisassociateUserStack: (params: ParamsFrom<'batchDisassociateUserStack', Record<string, never>>) => Promise<ReturnTypeFrom<'batchDisassociateUserStack'>>;
    copyImage: (params: ParamsFrom<'copyImage', Record<string, never>>) => Promise<ReturnTypeFrom<'copyImage'>>;
    createAppBlock: (params: ParamsFrom<'createAppBlock', Record<string, never>>) => Promise<ReturnTypeFrom<'createAppBlock'>>;
    createApplication: (params: ParamsFrom<'createApplication', Record<string, never>>) => Promise<ReturnTypeFrom<'createApplication'>>;
    createDirectoryConfig: (params: ParamsFrom<'createDirectoryConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'createDirectoryConfig'>>;
    createEntitlement: (params: ParamsFrom<'createEntitlement', Record<string, never>>) => Promise<ReturnTypeFrom<'createEntitlement'>>;
    createFleet: (params: ParamsFrom<'createFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'createFleet'>>;
    createImageBuilder: (params: ParamsFrom<'createImageBuilder', Record<string, never>>) => Promise<ReturnTypeFrom<'createImageBuilder'>>;
    createImageBuilderStreamingURL: (params: ParamsFrom<'createImageBuilderStreamingURL', Record<string, never>>) => Promise<ReturnTypeFrom<'createImageBuilderStreamingURL'>>;
    createStack: (params: ParamsFrom<'createStack', Record<string, never>>) => Promise<ReturnTypeFrom<'createStack'>>;
    createStreamingURL: (params: ParamsFrom<'createStreamingURL', Record<string, never>>) => Promise<ReturnTypeFrom<'createStreamingURL'>>;
    createUpdatedImage: (params: ParamsFrom<'createUpdatedImage', Record<string, never>>) => Promise<ReturnTypeFrom<'createUpdatedImage'>>;
    createUsageReportSubscription: (params: ParamsFrom<'createUsageReportSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'createUsageReportSubscription'>>;
    createUser: (params: ParamsFrom<'createUser', Record<string, never>>) => Promise<ReturnTypeFrom<'createUser'>>;
    deleteAppBlock: (params: ParamsFrom<'deleteAppBlock', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteAppBlock'>>;
    deleteApplication: (params: ParamsFrom<'deleteApplication', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteApplication'>>;
    deleteDirectoryConfig: (params: ParamsFrom<'deleteDirectoryConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDirectoryConfig'>>;
    deleteEntitlement: (params: ParamsFrom<'deleteEntitlement', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteEntitlement'>>;
    deleteFleet: (params: ParamsFrom<'deleteFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFleet'>>;
    deleteImage: (params: ParamsFrom<'deleteImage', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteImage'>>;
    deleteImageBuilder: (params: ParamsFrom<'deleteImageBuilder', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteImageBuilder'>>;
    deleteImagePermissions: (params: ParamsFrom<'deleteImagePermissions', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteImagePermissions'>>;
    deleteStack: (params: ParamsFrom<'deleteStack', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteStack'>>;
    deleteUsageReportSubscription: (params: ParamsFrom<'deleteUsageReportSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteUsageReportSubscription'>>;
    deleteUser: (params: ParamsFrom<'deleteUser', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteUser'>>;
    describeAppBlocks: (params: ParamsFrom<'describeAppBlocks', Record<string, never>>) => Promise<ReturnTypeFrom<'describeAppBlocks'>>;
    describeApplicationFleetAssociations: (params: ParamsFrom<'describeApplicationFleetAssociations', Record<string, never>>) => Promise<ReturnTypeFrom<'describeApplicationFleetAssociations'>>;
    describeApplications: (params: ParamsFrom<'describeApplications', Record<string, never>>) => Promise<ReturnTypeFrom<'describeApplications'>>;
    describeDirectoryConfigs: (params: ParamsFrom<'describeDirectoryConfigs', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDirectoryConfigs'>>;
    describeEntitlements: (params: ParamsFrom<'describeEntitlements', Record<string, never>>) => Promise<ReturnTypeFrom<'describeEntitlements'>>;
    describeFleets: (params: ParamsFrom<'describeFleets', Record<string, never>>) => Promise<ReturnTypeFrom<'describeFleets'>>;
    describeImageBuilders: (params: ParamsFrom<'describeImageBuilders', Record<string, never>>) => Promise<ReturnTypeFrom<'describeImageBuilders'>>;
    describeImagePermissions: (params: ParamsFrom<'describeImagePermissions', Record<string, never>>) => Promise<ReturnTypeFrom<'describeImagePermissions'>>;
    describeImages: (params: ParamsFrom<'describeImages', Record<string, never>>) => Promise<ReturnTypeFrom<'describeImages'>>;
    describeSessions: (params: ParamsFrom<'describeSessions', Record<string, never>>) => Promise<ReturnTypeFrom<'describeSessions'>>;
    describeStacks: (params: ParamsFrom<'describeStacks', Record<string, never>>) => Promise<ReturnTypeFrom<'describeStacks'>>;
    describeUsageReportSubscriptions: (params: ParamsFrom<'describeUsageReportSubscriptions', Record<string, never>>) => Promise<ReturnTypeFrom<'describeUsageReportSubscriptions'>>;
    describeUserStackAssociations: (params: ParamsFrom<'describeUserStackAssociations', Record<string, never>>) => Promise<ReturnTypeFrom<'describeUserStackAssociations'>>;
    describeUsers: (params: ParamsFrom<'describeUsers', Record<string, never>>) => Promise<ReturnTypeFrom<'describeUsers'>>;
    disableUser: (params: ParamsFrom<'disableUser', Record<string, never>>) => Promise<ReturnTypeFrom<'disableUser'>>;
    disassociateApplicationFleet: (params: ParamsFrom<'disassociateApplicationFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateApplicationFleet'>>;
    disassociateApplicationFromEntitlement: (params: ParamsFrom<'disassociateApplicationFromEntitlement', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateApplicationFromEntitlement'>>;
    disassociateFleet: (params: ParamsFrom<'disassociateFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateFleet'>>;
    enableUser: (params: ParamsFrom<'enableUser', Record<string, never>>) => Promise<ReturnTypeFrom<'enableUser'>>;
    expireSession: (params: ParamsFrom<'expireSession', Record<string, never>>) => Promise<ReturnTypeFrom<'expireSession'>>;
    listAssociatedFleets: (params: ParamsFrom<'listAssociatedFleets', Record<string, never>>) => Promise<ReturnTypeFrom<'listAssociatedFleets'>>;
    listAssociatedStacks: (params: ParamsFrom<'listAssociatedStacks', Record<string, never>>) => Promise<ReturnTypeFrom<'listAssociatedStacks'>>;
    listEntitledApplications: (params: ParamsFrom<'listEntitledApplications', Record<string, never>>) => Promise<ReturnTypeFrom<'listEntitledApplications'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    startFleet: (params: ParamsFrom<'startFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'startFleet'>>;
    startImageBuilder: (params: ParamsFrom<'startImageBuilder', Record<string, never>>) => Promise<ReturnTypeFrom<'startImageBuilder'>>;
    stopFleet: (params: ParamsFrom<'stopFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'stopFleet'>>;
    stopImageBuilder: (params: ParamsFrom<'stopImageBuilder', Record<string, never>>) => Promise<ReturnTypeFrom<'stopImageBuilder'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateApplication: (params: ParamsFrom<'updateApplication', Record<string, never>>) => Promise<ReturnTypeFrom<'updateApplication'>>;
    updateDirectoryConfig: (params: ParamsFrom<'updateDirectoryConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'updateDirectoryConfig'>>;
    updateEntitlement: (params: ParamsFrom<'updateEntitlement', Record<string, never>>) => Promise<ReturnTypeFrom<'updateEntitlement'>>;
    updateFleet: (params: ParamsFrom<'updateFleet', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFleet'>>;
    updateImagePermissions: (params: ParamsFrom<'updateImagePermissions', Record<string, never>>) => Promise<ReturnTypeFrom<'updateImagePermissions'>>;
    updateStack: (params: ParamsFrom<'updateStack', Record<string, never>>) => Promise<ReturnTypeFrom<'updateStack'>>;
    static fromClient(client: AWSAppStream): AppStream;
    static client(options?: AWSAppStream.Types.ClientConfiguration): AppStream;
}
export {};
