import { Download } from '@/utils';
type FetchedData = {
    blob: Blob;
    filename: string;
} | null;
type State = {
    originalname: string;
    controller: AbortController;
    progress: number;
    downloaded: boolean;
};
export declare const useDownloadStore: () => {
    fetch: (file: Download) => Promise<FetchedData>;
    transformUri: (file: Download) => string;
    states: Map<string, {
        originalname: string;
        controller: {
            readonly signal: {
                readonly aborted: boolean;
                onabort: ((this: AbortSignal, ev: Event) => any) | null;
                readonly reason: any;
                throwIfAborted: {
                    (): void;
                    (): void;
                };
                addEventListener: {
                    <K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
                    (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
                };
                removeEventListener: {
                    <K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
                    (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
                };
                dispatchEvent: (event: Event) => boolean;
            };
            abort: {
                (reason?: any): void;
                (reason?: any): void;
            };
        };
        progress: number;
        downloaded: boolean;
    }> & Omit<Map<string, State>, keyof Map<any, any>>;
};
export {};
