/**
 */
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 GetSpaceHeaders 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 GetSpaceRequest extends $tea.Model {
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * open_conversation_id
     */
    openConversationId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * union_id
     */
    unionId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class GetSpaceResponseBody extends $tea.Model {
    space?: GetSpaceResponseBodySpace;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class GetSpaceResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: GetSpaceResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendHeaders 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 SendRequest extends $tea.Model {
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * file_id
     */
    dentryId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * open_conversation_id
     */
    openConversationId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * space_id
     */
    spaceId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * union_id
     */
    unionId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendResponseBody extends $tea.Model {
    file?: SendResponseBodyFile;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: SendResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendByAppHeaders 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 SendByAppRequest extends $tea.Model {
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * file_id
     */
    dentryId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * space_id
     */
    spaceId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * union_id
     */
    unionId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendByAppResponseBody extends $tea.Model {
    file?: SendByAppResponseBodyFile;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendByAppResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: SendByAppResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendLinkHeaders 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 SendLinkRequest extends $tea.Model {
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * file_id
     */
    dentryId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * open_conversation_id
     */
    openConversationId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * space_id
     */
    spaceId?: string;
    /**
     * @remarks
     * This parameter is required.
     *
     * @example
     * union_id
     */
    unionId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendLinkResponseBody extends $tea.Model {
    file?: SendLinkResponseBodyFile;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendLinkResponse extends $tea.Model {
    headers?: {
        [key: string]: string;
    };
    statusCode?: number;
    body?: SendLinkResponseBody;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class GetSpaceResponseBodySpace extends $tea.Model {
    /**
     * @example
     * corp_id
     */
    corpId?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    createTime?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    modifiedTime?: string;
    spaceId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendResponseBodyFile extends $tea.Model {
    /**
     * @example
     * open_conversation_id
     */
    conversationId?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    createTime?: string;
    /**
     * @example
     * creator_id
     */
    creatorId?: string;
    /**
     * @example
     * txt
     */
    extension?: string;
    /**
     * @example
     * file_id
     */
    id?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    modifiedTime?: string;
    /**
     * @example
     * modified_id
     */
    modifierId?: string;
    /**
     * @example
     * file_name
     */
    name?: string;
    /**
     * @example
     * parent_id
     */
    parentId?: string;
    /**
     * @example
     * file_path
     */
    path?: string;
    /**
     * @example
     * 256
     */
    size?: number;
    /**
     * @example
     * space_id
     */
    spaceId?: string;
    /**
     * @example
     * NORMAL
     */
    status?: string;
    /**
     * @example
     * file
     */
    type?: string;
    /**
     * @example
     * uuid
     */
    uuid?: string;
    /**
     * @example
     * 1
     */
    version?: number;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendByAppResponseBodyFile extends $tea.Model {
    /**
     * @example
     * open_conversation_id
     */
    conversationId?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    createTime?: string;
    /**
     * @example
     * creator_id
     */
    creatorId?: string;
    /**
     * @example
     * txt
     */
    extension?: string;
    /**
     * @example
     * file_id
     */
    id?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    modifiedTime?: string;
    /**
     * @example
     * modified_id
     */
    modifierId?: string;
    /**
     * @example
     * file_name
     */
    name?: string;
    /**
     * @example
     * parent_id
     */
    parentId?: string;
    /**
     * @example
     * file_path
     */
    path?: string;
    /**
     * @example
     * 256
     */
    size?: number;
    /**
     * @example
     * space_id
     */
    spaceId?: string;
    /**
     * @example
     * NORMAL
     */
    status?: string;
    /**
     * @example
     * file
     */
    type?: string;
    /**
     * @example
     * uuid
     */
    uuid?: string;
    /**
     * @example
     * 1
     */
    version?: number;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class SendLinkResponseBodyFile extends $tea.Model {
    /**
     * @example
     * open_conversation_id
     */
    conversationId?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    createTime?: string;
    /**
     * @example
     * creator_id
     */
    creatorId?: string;
    /**
     * @example
     * txt
     */
    extension?: string;
    /**
     * @example
     * file_id
     */
    id?: string;
    /**
     * @example
     * 2022-01-01T10:00:00Z
     */
    modifiedTime?: string;
    /**
     * @example
     * modified_id
     */
    modifierId?: string;
    /**
     * @example
     * file_name
     */
    name?: string;
    /**
     * @example
     * parent_id
     */
    parentId?: string;
    /**
     * @example
     * file_path
     */
    path?: string;
    /**
     * @example
     * 256
     */
    size?: number;
    /**
     * @example
     * space_id
     */
    spaceId?: string;
    /**
     * @example
     * NORMAL
     */
    status?: string;
    /**
     * @example
     * file
     */
    type?: string;
    /**
     * @example
     * uuid
     */
    uuid?: string;
    /**
     * @example
     * 1
     */
    version?: 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);
    /**
     * 获取IM会话存储空间信息
     *
     * @param request - GetSpaceRequest
     * @param headers - GetSpaceHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns GetSpaceResponse
     */
    getSpaceWithOptions(request: GetSpaceRequest, headers: GetSpaceHeaders, runtime: $Util.RuntimeOptions): Promise<GetSpaceResponse>;
    /**
     * 获取IM会话存储空间信息
     *
     * @param request - GetSpaceRequest
     * @returns GetSpaceResponse
     */
    getSpace(request: GetSpaceRequest): Promise<GetSpaceResponse>;
    /**
     * 发送文件到指定会话
     *
     * @param request - SendRequest
     * @param headers - SendHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns SendResponse
     */
    sendWithOptions(request: SendRequest, headers: SendHeaders, runtime: $Util.RuntimeOptions): Promise<SendResponse>;
    /**
     * 发送文件到指定会话
     *
     * @param request - SendRequest
     * @returns SendResponse
     */
    send(request: SendRequest): Promise<SendResponse>;
    /**
     * 以应用身份发送文件给自己
     *
     * @param request - SendByAppRequest
     * @param headers - SendByAppHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns SendByAppResponse
     */
    sendByAppWithOptions(request: SendByAppRequest, headers: SendByAppHeaders, runtime: $Util.RuntimeOptions): Promise<SendByAppResponse>;
    /**
     * 以应用身份发送文件给自己
     *
     * @param request - SendByAppRequest
     * @returns SendByAppResponse
     */
    sendByApp(request: SendByAppRequest): Promise<SendByAppResponse>;
    /**
     * 发送文件链接到指定会话
     *
     * @param request - SendLinkRequest
     * @param headers - SendLinkHeaders
     * @param runtime - runtime options for this request RuntimeOptions
     * @returns SendLinkResponse
     */
    sendLinkWithOptions(request: SendLinkRequest, headers: SendLinkHeaders, runtime: $Util.RuntimeOptions): Promise<SendLinkResponse>;
    /**
     * 发送文件链接到指定会话
     *
     * @param request - SendLinkRequest
     * @returns SendLinkResponse
     */
    sendLink(request: SendLinkRequest): Promise<SendLinkResponse>;
}
