import { BaseDocumentResolver } from '../../type';
import { DocumentLoader } from '@klayr-did/klayr-decentralized-identifier';
interface JsonLdDocument {
    contextUrl: string | null;
    document: Record<string, any>;
    documentUrl: string;
    tag?: string;
}
export declare class JsonLdDocumentLoader {
    private _customLoader;
    private _customResolver;
    private documents;
    private protocolHandlers;
    constructor();
    build(): (url: string) => Promise<JsonLdDocument>;
    addStatic(url: string, document: Record<string, any>): void;
    setProtocolHandler({ protocol, handler }: {
        protocol: string;
        handler: BaseDocumentResolver;
    }): void;
    setDidResolver(didResolver: BaseDocumentResolver): void;
    setCustomLoader(documentLoader: DocumentLoader): void;
    setCustomResolver(resolver: BaseDocumentResolver): void;
    documentLoader(url: string): Promise<JsonLdDocument>;
}
export {};
