@cruxpay/js-sdk
Version:
CruxPay Javascript SDK
37 lines (36 loc) • 1.72 kB
TypeScript
export * from "./utils";
import { IClientAssetMapping } from "../../../core/entities/crux-domain";
import { DomainRegistrationStatus, INameServiceConfigurationOverrides } from "../../../core/entities/crux-domain";
import { ICruxBlockstackInfrastructure } from "../../../core/interfaces";
import { IKeyManager } from "../../../core/interfaces/key-manager";
import { StorageService } from "../../../packages/storage";
export interface ICruxOnBoardingClientOptions {
cacheStorage?: StorageService;
configKey?: string | IKeyManager;
domain?: string;
blockstackInfrastructure?: ICruxBlockstackInfrastructure;
}
export declare class CruxOnBoardingClient {
private cacheStorage?;
private cruxBlockstackInfrastructure;
private initPromise;
private cruxDomainRepository;
private configKeyManager?;
private cruxDomain?;
private domainContext?;
constructor(options: ICruxOnBoardingClientOptions);
domain: string;
isCruxDomainAvailable: (domain: string) => Promise<boolean>;
registerCruxDomain: (domain: string) => Promise<void>;
getCruxDomainState: () => Promise<DomainRegistrationStatus>;
getNameServiceConfig: () => Promise<INameServiceConfigurationOverrides | undefined>;
getAssetMapping: () => Promise<IClientAssetMapping>;
getSupportedAssetGroups: () => Promise<string[]>;
putNameServiceConfig: (newNameServiceConfig: INameServiceConfigurationOverrides) => Promise<void>;
putAssetMapping: (newAssetMapping: IClientAssetMapping) => Promise<void>;
putSupportedAssetGroups: (newSupportedAssetGroups: string[]) => Promise<void>;
private init;
private getCruxDomain;
private getConfigKeyManager;
private restoreCruxDomain;
}