/**
 */
import * as $Util from '@alicloud/tea-util';
import OpenApi, * as $OpenApi from '@alicloud/openapi-client';
import * as $tea from '@alicloud/tea-typescript';
export declare class AddCallConfigHeaders extends $tea.Model {
    commonHeaders?: {
        [key: string]: string;
    };
    xAcsDingtalkAccessToken?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class AddCallConfigRequest extends $tea.Model {
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * ding3f583b067f2q450c12d
     */
    corpId?: string;
    /**
     * @example
     * token12345
     */
    isvToken?: string;
    /**
     * @example
     * 057112345678
     */
    phoneNumber?: string;
    /**
     * @example
     * call
     */
    scopeType?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class AddCallConfigResponseBody extends $tea.Model {
    token?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class AddCallConfigResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: AddCallConfigResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DelCallConfigHeaders extends $tea.Model {
    commonHeaders?: {
        [key: string]: string;
    };
    xAcsDingtalkAccessToken?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DelCallConfigRequest extends $tea.Model {
    /**
     * @example
     * ding3f583b067250d34dd
     */
    corpId?: string;
    /**
     * @example
     * token1233143
     */
    isvToken?: string;
    /**
     * @example
     * 057112345678
     */
    phoneNumber?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DelCallConfigResponseBody extends $tea.Model {
    result?: boolean;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DelCallConfigResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: DelCallConfigResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class QueryCallConfigHeaders extends $tea.Model {
    commonHeaders?: {
        [key: string]: string;
    };
    xAcsDingtalkAccessToken?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class QueryCallConfigRequest extends $tea.Model {
    /**
     * @example
     * ding3f583b0672efc12d
     */
    corpId?: string;
    /**
     * @example
     * token23dafds
     */
    isvToken?: string;
    /**
     * @example
     * 057112345678
     */
    phoneNumber?: string;
    /**
     * @example
     * call
     */
    scopeType?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class QueryCallConfigResponseBody extends $tea.Model {
    result?: QueryCallConfigResponseBodyResult[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class QueryCallConfigResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: QueryCallConfigResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class QueryCallConfigResponseBodyResult extends $tea.Model {
    accountDomain?: string;
    accountId?: string;
    callInType?: number;
    callOutType?: number;
    createUid?: string;
    phoneNumber?: string;
    scopeType?: string;
    showType?: number;
    sourceType?: string;
    status?: number;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export default class Client extends OpenApi {
    constructor(config: $OpenApi.Config);
    /**
     * 添加外呼码号配置
     *
     * @param request - AddCallConfigRequest
     * @param headers - AddCallConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns AddCallConfigResponse
     */
    addCallConfigWithOptions(request: AddCallConfigRequest, headers: AddCallConfigHeaders, runtime: $Util.RuntimeOptions): Promise<AddCallConfigResponse>;
    /**
     * 添加外呼码号配置
     *
     * @param request - AddCallConfigRequest
     * @returns AddCallConfigResponse
     */
    addCallConfig(request: AddCallConfigRequest): Promise<AddCallConfigResponse>;
    /**
     * 删除码号配置
     *
     * @param request - DelCallConfigRequest
     * @param headers - DelCallConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns DelCallConfigResponse
     */
    delCallConfigWithOptions(request: DelCallConfigRequest, headers: DelCallConfigHeaders, runtime: $Util.RuntimeOptions): Promise<DelCallConfigResponse>;
    /**
     * 删除码号配置
     *
     * @param request - DelCallConfigRequest
     * @returns DelCallConfigResponse
     */
    delCallConfig(request: DelCallConfigRequest): Promise<DelCallConfigResponse>;
    /**
     * 查询外呼码号配置
     *
     * @param request - QueryCallConfigRequest
     * @param headers - QueryCallConfigHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns QueryCallConfigResponse
     */
    queryCallConfigWithOptions(request: QueryCallConfigRequest, headers: QueryCallConfigHeaders, runtime: $Util.RuntimeOptions): Promise<QueryCallConfigResponse>;
    /**
     * 查询外呼码号配置
     *
     * @param request - QueryCallConfigRequest
     * @returns QueryCallConfigResponse
     */
    queryCallConfig(request: QueryCallConfigRequest): Promise<QueryCallConfigResponse>;
}
