import { AbstractClient } from "../../../common/abstract_client";
import { ClientConfig } from "../../../common/interface";
import { DescribeAndroidInstanceTasksStatusResponse, ExecuteCommandOnAndroidInstancesResponse, StartPublishStreamToCSSResponse, FetchAndroidInstancesLogsResponse, CreateAndroidAppRequest, CreateSessionRequest, RestoreAndroidInstanceFromStorageRequest, SyncExecuteCommandOnAndroidInstancesRequest, RebootAndroidInstanceHostsResponse, UninstallAndroidInstancesAppResponse, StopAndroidInstancesAppResponse, ModifyAndroidAppVersionResponse, DeleteAndroidAppResponse, ModifyAndroidInstancesInformationRequest, ModifyAndroidAppRequest, DescribeAndroidAppsResponse, StopAndroidInstancesAppRequest, CreateAndroidAppVersionRequest, ModifyAndroidInstancesLabelsRequest, BackUpAndroidInstanceToStorageRequest, DeleteAndroidInstanceImagesResponse, StartAndroidInstancesRequest, StartPublishStreamRequest, CreateAndroidInstanceImageResponse, ModifyAndroidInstanceResolutionResponse, DeleteAndroidInstanceImagesRequest, DescribeAndroidInstanceAppsResponse, CreateAndroidInstanceSSHResponse, ResetAndroidInstancesRequest, UploadFileToAndroidInstancesRequest, SaveGameArchiveResponse, ConnectAndroidInstanceRequest, CopyAndroidInstanceRequest, SyncExecuteCommandOnAndroidInstancesResponse, RestoreAndroidInstanceFromStorageResponse, ModifyAndroidAppVersionRequest, StartAndroidInstancesAppRequest, ModifyAndroidInstancesResolutionResponse, DeleteAndroidAppVersionResponse, ModifyAndroidInstancesUserIdRequest, StopPublishStreamResponse, StartAndroidInstancesResponse, DeleteAndroidInstanceLabelRequest, ModifyAndroidInstancesUserIdResponse, InstallAndroidInstancesAppRequest, UninstallAndroidInstancesAppRequest, DestroyAndroidInstancesRequest, CreateAndroidInstanceWebShellResponse, DescribeAndroidInstanceImagesResponse, ModifyAndroidInstanceInformationRequest, StopPublishStreamRequest, DescribeAndroidInstanceLabelsResponse, RestartAndroidInstancesAppResponse, DescribeAndroidInstanceTasksStatusRequest, CreateAndroidInstancesScreenshotResponse, DescribeInstancesCountResponse, ExecuteCommandOnAndroidInstancesRequest, ModifyAndroidInstanceInformationResponse, DestroyAndroidInstancesResponse, SaveGameArchiveRequest, SwitchGameArchiveResponse, CreateAndroidInstancesScreenshotRequest, CreateCosCredentialRequest, InstallAndroidInstancesAppResponse, ConnectAndroidInstanceResponse, DescribeAndroidInstancesRequest, DescribeAndroidInstancesResponse, SyncAndroidInstanceImageRequest, ModifyAndroidInstanceResolutionRequest, DeleteAndroidAppVersionRequest, StartAndroidInstancesAppResponse, SwitchGameArchiveRequest, StopAndroidInstancesRequest, StartPublishStreamToCSSRequest, ResetAndroidInstancesResponse, RestartAndroidInstancesAppRequest, DeleteAndroidAppRequest, DescribeAndroidAppsRequest, StopGameRequest, RebootAndroidInstancesResponse, TrylockWorkerResponse, CreateAndroidInstanceWebShellRequest, ModifyAndroidInstancesLabelsResponse, DescribeAndroidInstanceLabelsRequest, CopyAndroidInstanceResponse, DeleteAndroidInstanceLabelResponse, ModifyAndroidAppResponse, DescribeAndroidInstanceImagesRequest, UploadFileToAndroidInstancesResponse, SyncAndroidInstanceImageResponse, CreateAndroidInstancesResponse, StopGameResponse, CreateAndroidInstanceLabelRequest, RebootAndroidInstanceHostsRequest, ModifyAndroidInstancesInformationResponse, CreateCosCredentialResponse, CreateAndroidInstancesRequest, CreateAndroidInstanceLabelResponse, StartPublishStreamResponse, DescribeAndroidInstanceAppsRequest, DescribeInstancesCountRequest, TrylockWorkerRequest, RebootAndroidInstancesRequest, CreateSessionResponse, ModifyAndroidInstancesResolutionRequest, CreateAndroidAppVersionResponse, FetchAndroidInstancesLogsRequest, BackUpAndroidInstanceToStorageResponse, CreateAndroidInstanceSSHRequest, CreateAndroidAppResponse, StopAndroidInstancesResponse, CreateAndroidInstanceImageRequest } from "./gs_models";
/**
 * gs client
 * @class
 */
export declare class Client extends AbstractClient {
    constructor(clientConfig: ClientConfig);
    /**
     * 备份云手机到指定存储
     */
    BackUpAndroidInstanceToStorage(req: BackUpAndroidInstanceToStorageRequest, cb?: (error: string, rep: BackUpAndroidInstanceToStorageResponse) => void): Promise<BackUpAndroidInstanceToStorageResponse>;
    /**
     * 批量修改安卓实例的用户ID
     */
    ModifyAndroidInstancesUserId(req: ModifyAndroidInstancesUserIdRequest, cb?: (error: string, rep: ModifyAndroidInstancesUserIdResponse) => void): Promise<ModifyAndroidInstancesUserIdResponse>;
    /**
     * 强制退出游戏
     */
    StopGame(req: StopGameRequest, cb?: (error: string, rep: StopGameResponse) => void): Promise<StopGameResponse>;
    /**
     * 在安卓实例上同步执行命令，仅支持1秒内可以返回结果的命令，例如：ls、cd。同时执行的实例数量不能过多，否则可能云api返回超时。不支持超过1秒无法返回或无法自主结束的命令，例如：top、vim，执行结果最大1KB
     */
    SyncExecuteCommandOnAndroidInstances(req: SyncExecuteCommandOnAndroidInstancesRequest, cb?: (error: string, rep: SyncExecuteCommandOnAndroidInstancesResponse) => void): Promise<SyncExecuteCommandOnAndroidInstancesResponse>;
    /**
     * 指定存储还原云手机
     */
    RestoreAndroidInstanceFromStorage(req: RestoreAndroidInstanceFromStorageRequest, cb?: (error: string, rep: RestoreAndroidInstanceFromStorageResponse) => void): Promise<RestoreAndroidInstanceFromStorageResponse>;
    /**
     * 创建安卓实例 SSH 连接
     */
    CreateAndroidInstanceSSH(req: CreateAndroidInstanceSSHRequest, cb?: (error: string, rep: CreateAndroidInstanceSSHResponse) => void): Promise<CreateAndroidInstanceSSHResponse>;
    /**
     * 安卓实例截图
     */
    CreateAndroidInstancesScreenshot(req: CreateAndroidInstancesScreenshotRequest, cb?: (error: string, rep: CreateAndroidInstancesScreenshotResponse) => void): Promise<CreateAndroidInstancesScreenshotResponse>;
    /**
     * 卸载安卓实例应用
     */
    UninstallAndroidInstancesApp(req: UninstallAndroidInstancesAppRequest, cb?: (error: string, rep: UninstallAndroidInstancesAppResponse) => void): Promise<UninstallAndroidInstancesAppResponse>;
    /**
     * 创建安卓实例镜像
     */
    CreateAndroidInstanceImage(req: CreateAndroidInstanceImageRequest, cb?: (error: string, rep: CreateAndroidInstanceImageResponse) => void): Promise<CreateAndroidInstanceImageResponse>;
    /**
     * 尝试锁定机器
     */
    TrylockWorker(req: TrylockWorkerRequest, cb?: (error: string, rep: TrylockWorkerResponse) => void): Promise<TrylockWorkerResponse>;
    /**
     * 修改安卓实例的信息
     */
    ModifyAndroidInstanceInformation(req: ModifyAndroidInstanceInformationRequest, cb?: (error: string, rep: ModifyAndroidInstanceInformationResponse) => void): Promise<ModifyAndroidInstanceInformationResponse>;
    /**
     * 删除安卓实例镜像
     */
    DeleteAndroidInstanceImages(req: DeleteAndroidInstanceImagesRequest, cb?: (error: string, rep: DeleteAndroidInstanceImagesResponse) => void): Promise<DeleteAndroidInstanceImagesResponse>;
    /**
     * 批量修改安卓实例信息
     */
    ModifyAndroidInstancesInformation(req: ModifyAndroidInstancesInformationRequest, cb?: (error: string, rep: ModifyAndroidInstancesInformationResponse) => void): Promise<ModifyAndroidInstancesInformationResponse>;
    /**
     * 创建安卓实例
     */
    DescribeAndroidInstanceLabels(req: DescribeAndroidInstanceLabelsRequest, cb?: (error: string, rep: DescribeAndroidInstanceLabelsResponse) => void): Promise<DescribeAndroidInstanceLabelsResponse>;
    /**
     * 查询安卓实例镜像
     */
    DescribeAndroidInstanceImages(req: DescribeAndroidInstanceImagesRequest, cb?: (error: string, rep: DescribeAndroidInstanceImagesResponse) => void): Promise<DescribeAndroidInstanceImagesResponse>;
    /**
     * 启动安卓实例应用
     */
    StartAndroidInstancesApp(req: StartAndroidInstancesAppRequest, cb?: (error: string, rep: StartAndroidInstancesAppResponse) => void): Promise<StartAndroidInstancesAppResponse>;
    /**
     * 启动安卓实例应用
     */
    RestartAndroidInstancesApp(req: RestartAndroidInstancesAppRequest, cb?: (error: string, rep: RestartAndroidInstancesAppResponse) => void): Promise<RestartAndroidInstancesAppResponse>;
    /**
     * 修改安卓实例分辨率。需要注意的是该接口需要重启才能生效。
     */
    ModifyAndroidInstancesResolution(req: ModifyAndroidInstancesResolutionRequest, cb?: (error: string, rep: ModifyAndroidInstancesResolutionResponse) => void): Promise<ModifyAndroidInstancesResolutionResponse>;
    /**
     * 创建安卓实例
     */
    DeleteAndroidInstanceLabel(req: DeleteAndroidInstanceLabelRequest, cb?: (error: string, rep: DeleteAndroidInstanceLabelResponse) => void): Promise<DeleteAndroidInstanceLabelResponse>;
    /**
     * 切换游戏存档
     */
    SwitchGameArchive(req: SwitchGameArchiveRequest, cb?: (error: string, rep: SwitchGameArchiveResponse) => void): Promise<SwitchGameArchiveResponse>;
    /**
     * 创建安卓实例
     */
    CreateAndroidInstanceLabel(req: CreateAndroidInstanceLabelRequest, cb?: (error: string, rep: CreateAndroidInstanceLabelResponse) => void): Promise<CreateAndroidInstanceLabelResponse>;
    /**
     * 创建安卓应用
     */
    CreateAndroidApp(req: CreateAndroidAppRequest, cb?: (error: string, rep: CreateAndroidAppResponse) => void): Promise<CreateAndroidAppResponse>;
    /**
     * 上传文件到安卓实例
     */
    UploadFileToAndroidInstances(req: UploadFileToAndroidInstancesRequest, cb?: (error: string, rep: UploadFileToAndroidInstancesResponse) => void): Promise<UploadFileToAndroidInstancesResponse>;
    /**
     * 创建安卓实例 WebShell 连接
     */
    CreateAndroidInstanceWebShell(req: CreateAndroidInstanceWebShellRequest, cb?: (error: string, rep: CreateAndroidInstanceWebShellResponse) => void): Promise<CreateAndroidInstanceWebShellResponse>;
    /**
     * 开始云端推流
     */
    StartPublishStream(req: StartPublishStreamRequest, cb?: (error: string, rep: StartPublishStreamResponse) => void): Promise<StartPublishStreamResponse>;
    /**
     * 查询安卓实例
     */
    DescribeAndroidInstances(req: DescribeAndroidInstancesRequest, cb?: (error: string, rep: DescribeAndroidInstancesResponse) => void): Promise<DescribeAndroidInstancesResponse>;
    /**
     * 同步安卓实例镜像
     */
    SyncAndroidInstanceImage(req: SyncAndroidInstanceImageRequest, cb?: (error: string, rep: SyncAndroidInstanceImageResponse) => void): Promise<SyncAndroidInstanceImageResponse>;
    /**
     * 重启安卓实例
     */
    RebootAndroidInstances(req: RebootAndroidInstancesRequest, cb?: (error: string, rep: RebootAndroidInstancesResponse) => void): Promise<RebootAndroidInstancesResponse>;
    /**
     * 重启安卓实例
     */
    StopAndroidInstances(req: StopAndroidInstancesRequest, cb?: (error: string, rep: StopAndroidInstancesResponse) => void): Promise<StopAndroidInstancesResponse>;
    /**
     * 获取并发总数和运行数
     */
    DescribeInstancesCount(req: DescribeInstancesCountRequest, cb?: (error: string, rep: DescribeInstancesCountResponse) => void): Promise<DescribeInstancesCountResponse>;
    /**
     * 创建安卓实例
     */
    CreateAndroidInstances(req: CreateAndroidInstancesRequest, cb?: (error: string, rep: CreateAndroidInstancesResponse) => void): Promise<CreateAndroidInstancesResponse>;
    /**
     * 用于创建 Cos 临时密钥
     */
    CreateCosCredential(req: CreateCosCredentialRequest, cb?: (error: string, rep: CreateCosCredentialResponse) => void): Promise<CreateCosCredentialResponse>;
    /**
     * 修改安卓应用信息
     */
    ModifyAndroidApp(req: ModifyAndroidAppRequest, cb?: (error: string, rep: ModifyAndroidAppResponse) => void): Promise<ModifyAndroidAppResponse>;
    /**
     * 重启安卓实例
     */
    StartAndroidInstances(req: StartAndroidInstancesRequest, cb?: (error: string, rep: StartAndroidInstancesResponse) => void): Promise<StartAndroidInstancesResponse>;
    /**
     * 修改安卓实例分辨率。需要注意的是该接口可能导致正在运行的应用出现闪退，所以建议在实例维护时期才进行调用。
     */
    ModifyAndroidInstanceResolution(req: ModifyAndroidInstanceResolutionRequest, cb?: (error: string, rep: ModifyAndroidInstanceResolutionResponse) => void): Promise<ModifyAndroidInstanceResolutionResponse>;
    /**
     * 连接安卓实例
     */
    ConnectAndroidInstance(req: ConnectAndroidInstanceRequest, cb?: (error: string, rep: ConnectAndroidInstanceResponse) => void): Promise<ConnectAndroidInstanceResponse>;
    /**
     * 停止云端推流
     */
    StopPublishStream(req: StopPublishStreamRequest, cb?: (error: string, rep: StopPublishStreamResponse) => void): Promise<StopPublishStreamResponse>;
    /**
     * 查询安卓实例应用
     */
    DescribeAndroidInstanceApps(req: DescribeAndroidInstanceAppsRequest, cb?: (error: string, rep: DescribeAndroidInstanceAppsResponse) => void): Promise<DescribeAndroidInstanceAppsResponse>;
    /**
     * 停止安卓实例应用
     */
    StopAndroidInstancesApp(req: StopAndroidInstancesAppRequest, cb?: (error: string, rep: StopAndroidInstancesAppResponse) => void): Promise<StopAndroidInstancesAppResponse>;
    /**
     * 重启安卓实例宿主机。请注意：

- 当前每 15 分钟只能重启一次
- 一个宿主机可能有多个云手机实例，重启宿主机会影响运行在上面的所有实例，请确保该宿主机上的所有云手机实例未投入业务使用
     */
    RebootAndroidInstanceHosts(req: RebootAndroidInstanceHostsRequest, cb?: (error: string, rep: RebootAndroidInstanceHostsResponse) => void): Promise<RebootAndroidInstanceHostsResponse>;
    /**
     * 创建会话
     */
    CreateSession(req: CreateSessionRequest, cb?: (error: string, rep: CreateSessionResponse) => void): Promise<CreateSessionResponse>;
    /**
     * 删除安卓应用版本
     */
    DeleteAndroidAppVersion(req: DeleteAndroidAppVersionRequest, cb?: (error: string, rep: DeleteAndroidAppVersionResponse) => void): Promise<DeleteAndroidAppVersionResponse>;
    /**
     * 重置安卓实例
     */
    ResetAndroidInstances(req: ResetAndroidInstancesRequest, cb?: (error: string, rep: ResetAndroidInstancesResponse) => void): Promise<ResetAndroidInstancesResponse>;
    /**
     * 安装安卓实例应用
     */
    InstallAndroidInstancesApp(req: InstallAndroidInstancesAppRequest, cb?: (error: string, rep: InstallAndroidInstancesAppResponse) => void): Promise<InstallAndroidInstancesAppResponse>;
    /**
     * 查询安卓应用信息
     */
    DescribeAndroidApps(req: DescribeAndroidAppsRequest, cb?: (error: string, rep: DescribeAndroidAppsResponse) => void): Promise<DescribeAndroidAppsResponse>;
    /**
     * 复制安卓实例：
1. 排除和包含文件只能指定/data下的文件，不指定时复制整个/data目录
2. 源实例和目的实例必须在同一区域
3. 复制时，源实例和目的实例都会停机，复制完后实例会自动启动
4. 复制时会产生大量内网流量，请限制并发
     */
    CopyAndroidInstance(req: CopyAndroidInstanceRequest, cb?: (error: string, rep: CopyAndroidInstanceResponse) => void): Promise<CopyAndroidInstanceResponse>;
    /**
     * 创建安卓应用版本
     */
    CreateAndroidAppVersion(req: CreateAndroidAppVersionRequest, cb?: (error: string, rep: CreateAndroidAppVersionResponse) => void): Promise<CreateAndroidAppVersionResponse>;
    /**
     * 销毁安卓实例
     */
    DestroyAndroidInstances(req: DestroyAndroidInstancesRequest, cb?: (error: string, rep: DestroyAndroidInstancesResponse) => void): Promise<DestroyAndroidInstancesResponse>;
    /**
     * 删除安卓应用
     */
    DeleteAndroidApp(req: DeleteAndroidAppRequest, cb?: (error: string, rep: DeleteAndroidAppResponse) => void): Promise<DeleteAndroidAppResponse>;
    /**
     * 批量获取安卓实例日志
     */
    FetchAndroidInstancesLogs(req: FetchAndroidInstancesLogsRequest, cb?: (error: string, rep: FetchAndroidInstancesLogsResponse) => void): Promise<FetchAndroidInstancesLogsResponse>;
    /**
     * 在安卓实例上异步执行命令，命令输出结果如果内容过长会被截断
     */
    ExecuteCommandOnAndroidInstances(req: ExecuteCommandOnAndroidInstancesRequest, cb?: (error: string, rep: ExecuteCommandOnAndroidInstancesResponse) => void): Promise<ExecuteCommandOnAndroidInstancesResponse>;
    /**
     * 开始云端推流
     */
    StartPublishStreamToCSS(req: StartPublishStreamToCSSRequest, cb?: (error: string, rep: StartPublishStreamToCSSResponse) => void): Promise<StartPublishStreamToCSSResponse>;
    /**
     * 修改安卓应用版本
     */
    ModifyAndroidAppVersion(req: ModifyAndroidAppVersionRequest, cb?: (error: string, rep: ModifyAndroidAppVersionResponse) => void): Promise<ModifyAndroidAppVersionResponse>;
    /**
     * 修改安卓实例分辨率。需要注意的是该接口可能导致正在运行的应用出现闪退，所以建议在实例维护时期才进行调用。
     */
    ModifyAndroidInstancesLabels(req: ModifyAndroidInstancesLabelsRequest, cb?: (error: string, rep: ModifyAndroidInstancesLabelsResponse) => void): Promise<ModifyAndroidInstancesLabelsResponse>;
    /**
     * 保存游戏存档
     */
    SaveGameArchive(req: SaveGameArchiveRequest, cb?: (error: string, rep: SaveGameArchiveResponse) => void): Promise<SaveGameArchiveResponse>;
    /**
     * 查询安卓实例任务状态
     */
    DescribeAndroidInstanceTasksStatus(req: DescribeAndroidInstanceTasksStatusRequest, cb?: (error: string, rep: DescribeAndroidInstanceTasksStatusResponse) => void): Promise<DescribeAndroidInstanceTasksStatusResponse>;
}
