import type { MapDocumentNode, ProfileDocumentNode, ProviderJson } from '@superfaceai/ast'; import type { IConfig, ICrypto, ILogger } from '../../interfaces'; import type { AuthCache, IFetch } from '../interpreter'; export interface RegistryProviderInfo { url: string; registryId: string; serviceUrl: string; mappingUrl: string; semanticProfile: string; } export interface RegistryErrorBody { title: string; detail?: string; } export declare function isRegistryErrorBody(input: unknown): input is RegistryErrorBody; export declare function assertIsRegistryProviderInfo(input: unknown, logger?: ILogger): asserts input is { disco: RegistryProviderInfo[]; }; export declare function fetchProviderInfo(providerName: string, config: IConfig, crypto: ICrypto, fetchInstance: IFetch & AuthCache, logger?: ILogger): Promise; export declare function fetchBind(request: { profileId: string; provider?: string; mapVariant?: string; mapRevision?: string; }, config: IConfig, crypto: ICrypto, fetchInstance: IFetch & AuthCache, logger?: ILogger): Promise<{ provider: ProviderJson; mapAst?: MapDocumentNode; }>; export declare function fetchProfileAst(profileId: string, config: IConfig, crypto: ICrypto, fetchInstance: IFetch & AuthCache, logger?: ILogger): Promise; export declare function fetchMapAST(mapId: string, config: IConfig, crypto: ICrypto, fetchInstance: IFetch & AuthCache, logger?: ILogger): Promise;