import { DomainRegistrationStatus } from "../../core/entities/crux-domain"; import { ICruxUserInformation } from "../../core/entities/crux-user"; import { IKeyManager } from "../../core/interfaces/key-manager"; import { CruxDomainId, CruxId } from "../../packages/identity-utils"; import { StorageService } from "../../packages/storage"; import { INameDetails } from "./api-clients"; export interface IBlockstackServiceInputOptions { bnsNodes: string[]; subdomainRegistrar: string; cacheStorage?: StorageService; } export declare class BlockstackService { static getRegisteredBlockstackNamesByAddress: (address: string, bnsNodes: string[], cacheStorage?: StorageService | undefined) => Promise; static getNameDetails: (blockstackName: string, bnsNodes: string[], tag?: string | undefined, cacheStorage?: StorageService | undefined) => Promise; static getGaiaHubFromZonefile: (zonefile: string) => string; static getDomainRegistrationStatusFromNameDetails: (nameDetails: INameDetails) => DomainRegistrationStatus; static getCruxUserInformationFromSubdomainStatus: (subdomainStatus: { status: string; statusCode?: number | undefined; }) => ICruxUserInformation; private cacheStorage?; private bnsNodes; private subdomainRegistrar; constructor(options: IBlockstackServiceInputOptions); getNameDetails: (id: CruxId | CruxDomainId, tag?: string | undefined) => Promise; getGaiaHub: (id: CruxId | CruxDomainId, tag?: string | undefined) => Promise; getDomainRegistrationStatus: (cruxDomainId: CruxDomainId) => Promise; getCruxDomainIdWithConfigKeyManager: (keyManager: IKeyManager, contextDomainId?: CruxDomainId | undefined) => Promise; getCruxIdWithKeyManager: (keyManager: IKeyManager, cruxDomainId: CruxDomainId) => Promise; isCruxIdAvailable: (cruxId: CruxId) => Promise; registerCruxId: (cruxId: CruxId, gaiaHub: string, keyManager: IKeyManager) => Promise; getCruxIdInformation: (cruxId: CruxId, tag?: string | undefined, onlyRegistered?: boolean | undefined) => Promise; }