import { BlockstackDomainId } from "../../packages/identity-utils"; import { StorageService } from "../../packages/storage"; export interface IHubInfo { challenge_text: string; latest_auth_version: string; max_file_upload_size_megabytes: number; read_url_prefix: string; } export declare enum UPLOADABLE_JSON_FILES { CRUXPAY = "cruxpay.json", CLIENT_CONFIG = "client-config.json" } export declare class GaiaServiceApiClient { static getHubInfo: (gaiaHub: string, cacheStorage?: StorageService | undefined) => Promise; static store: (gaiaHub: string, filename: string, address: string, authToken: string, contents: string, contentType?: string) => Promise<{ publicURL: string; }>; static retrieve: (readURLPrefix: string, filename: string, address: string, cacheStorage?: StorageService | undefined) => Promise; } export interface INameDetails { address?: string; blockchain?: string; did?: string; last_txid?: string; status?: string; zonefile?: string; zonefile_hash?: string; more?: string; } export declare class BlockstackNamingServiceApiClient { static getNamesByAddress: (bnsNode: string, address: string, cacheStorage?: StorageService | undefined) => Promise<{ names: string[]; }>; static getNameDetails: (bnsNode: string, blockstackName: string, tag?: string | undefined, cacheStorage?: StorageService | undefined) => Promise; } export interface ISubdomainRegistrarEntry { owner: string; queue_ix: number; received_ts: string; sequenceNumber: string; signature: string; status: string; status_more: string; subdomainName: string; zonefile: string; } export declare class BlockstackSubdomainRegistrarApiClient { private baseUrl; private initPromise; private blockstackDomainId; constructor(baseUrl: string, blockstackDomainId: BlockstackDomainId); getSubdomainStatus: (subdomainString: string) => Promise<{ status: string; statusCode?: number | undefined; }>; registerSubdomain: (name: string, gaiaHubUrl: string, ownerAdderss: string) => Promise; getSubdomainRegistrarEntriesByAddress: (address: string) => Promise; getIndex: () => Promise; private init; }