import { AppContext } from 'vue';
import { LoadingInstance } from './loading.js';
import { LoadingOptions } from './types.js';
export declare function createDirectiveLoading(options?: LoadingOptions, context?: AppContext | null): LoadingInstance;
export interface LoadingService {
    (options?: LoadingOptions, context?: AppContext | null): LoadingInstance;
    closeAll: () => void;
    with: <T>(task: Promise<T> | (() => T | Promise<T>), options?: LoadingOptions, context?: AppContext | null) => Promise<T>;
    _context: AppContext | null;
}
export declare const XyLoadingService: LoadingService;
