import type { IAttachmentUploadOptions, IAttachmentValue, IAttachmentIoService as IRemoteAttachmentIoServiceType, AttachmentValue as RemoteAttachmentValue } from '@univerjs-pro/collaboration-client';
import { AttachmentSourceType } from '@univerjs-pro/collaboration-client';
import { IConfigService, Injector } from '@univerjs/core';
export { AttachmentSourceType };
export type BaseAttachmentValue = RemoteAttachmentValue;
export type IBaseAttachmentUploadOptions = IAttachmentUploadOptions;
export type { IAttachmentUploadOptions, IAttachmentValue };
export interface IAttachmentIoService extends IRemoteAttachmentIoServiceType {
}
export type IBaseAttachmentIoService = IAttachmentIoService;
export declare const IAttachmentIoService: import("@wendellhu/redi").IdentifierDecorator<IRemoteAttachmentIoServiceType>;
export declare const IBaseAttachmentIoService: import("@wendellhu/redi").IdentifierDecorator<IRemoteAttachmentIoServiceType>;
export declare class AttachmentIoService implements IAttachmentIoService {
    private readonly _configService;
    private readonly _injector?;
    constructor(_configService: IConfigService, _injector?: Injector | undefined);
    getUploadOptions(): IAttachmentUploadOptions;
    saveAttachment(file: File): Promise<IAttachmentValue>;
    private _trySaveWithImageIo;
}
export { AttachmentIoService as BaseAttachmentIoService };
