UNPKG

@cessnetwork/api

Version:

CESS Chain Interface Implementation in TypeScript

417 lines 31.2 kB
/** * Copyright (C) CESS. All rights reserved. * Copyright (C) Cumulus Encrypted Storage System. All rights reserved. * * SPDX-License-Identifier: Apache-2.0 */ import { AccountInfoData, SystemProperties } from "@cessnetwork/types"; import { ApiPromise } from '@polkadot/api'; import { KeyringPair } from '@polkadot/keyring/types'; import { API } from './api'; import { ChainBase } from './chain/types'; export interface CESSConfig { name?: string; rpcs: string[]; privateKey?: string; ss58Format?: number; connectionTimeout?: number; reconnectTimeout?: number; maxReconnectAttempts?: number; keyringType?: 'sr25519'; enableEventListener?: boolean; } declare const CESS_base: { new (...args: any[]): { queryExpander(block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").ExpanderInfo | null>; queryMinerByAccountId(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").MinerInfo | import("@cessnetwork/types").MinerInfoDetail[] | null>; queryStakingStartBlock(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<number | import("@cessnetwork/types").MinerStakingStartBlock[]>; queryAllMiner(block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@polkadot/types/interfaces").AccountId[]>; queryCounterForMinerItems(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryRewardMapByAccountId(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").MinerReward | import("@cessnetwork/types").MinerRewardDetail[] | null>; queryMinerLockByAccountId(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").MinerReward | null>; queryRestoralTargetByAccountId(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").RestoralTargetInfo | import("@cessnetwork/types").RestoralTargetInfoDetail[] | null>; queryPendingReplacements(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<number | import("@cessnetwork/types").PendingReplacement[] | null>; queryCompleteSnapShot(era: import("@cessnetwork/types").EraInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").CompleteSnapShotType | null>; queryCompleteMinerSnapShot(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").MinerCompleteInfo[] | import("@cessnetwork/types").MinerCompleteDetail[]>; increaseCollateral(account: import("@cessnetwork/types").AccountIdInput, token: import("@cessnetwork/types").Token, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; increaseDeclarationSpace(tibCount: import("@cessnetwork/types").Space, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; minerExitPrep(options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; minerWithdraw(options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; receiveReward(options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; registerPoisKey(poisKey: import("@cessnetwork/types").PoISKeyInfo, teeSignWithAcc: import("@cessnetwork/types").TeeSig, teeSign: import("@cessnetwork/types").TeeSig, teePuk: import("@cessnetwork/types").TeeWorkerPublicKey, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; regnstkSminer(earningAcc: import("@cessnetwork/types").AccountIdInput, endpoint: string, staking: import("@cessnetwork/types").BalanceInput, tibCount: import("@cessnetwork/types").Space, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; regnstkAssignStaking(earningAcc: import("@cessnetwork/types").AccountIdInput, endpoint: string, stakingAcc: import("@cessnetwork/types").AccountIdInput, tibCount: import("@cessnetwork/types").Space, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; updateBeneficiary(earningAcc: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; updateSminerEndpoint(endpoint: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryUnitPrice(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryTotalIdleSpace(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryTotalServiceSpace(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryPurchasedSpace(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryPayOrder(orderId?: import("@cessnetwork/types").OrderId, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StorageHandlerOrder | import("@cessnetwork/types").StorageHandlerOrderDetail[] | null>; queryTerritory(accountId: import("@cessnetwork/types").AccountIdInput, territoryName?: string, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").Territory | import("@cessnetwork/types").TerritoryDetail[] | null>; queryConsignment(token?: import("@cessnetwork/types").Token, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").Consignment | import("@cessnetwork/types").ConsignmentDetail[] | null>; mintTerritory(gibCount: import("@cessnetwork/types").Space, territoryName: string, days: import("@cessnetwork/types").Day, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; expandingTerritory(territoryName: string, gibCount: import("@cessnetwork/types").Space, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; renewalTerritory(territoryName: string, days: import("@cessnetwork/types").Day, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; reactivateTerritory(territoryName: string, days: import("@cessnetwork/types").Day, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; territoryConsignment(territoryName: string, price: import("@cessnetwork/types").Price, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; cancelConsignment(territoryName: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; buyConsignment(token: import("@cessnetwork/types").Token, territoryName: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; cancelPurchaseAction(token: import("@cessnetwork/types").Token, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; clearServiceSpace(options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; createOrder(targetAcc: import("@cessnetwork/types").AccountIdInput, territoryName: string, orderType: import("@cessnetwork/types").OrderType, gibCount: import("@cessnetwork/types").Space, days: import("@cessnetwork/types").Day, expiredAfterNMinutes: number, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; defineUpdatePrice(price: import("@cessnetwork/types").Price, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; execConsignment(token: import("@cessnetwork/types").Token, territoryName: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; execOrder(orderId: import("@cessnetwork/types").OrderId, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; fixTerritorySpaceForReactivate(accountId: import("@cessnetwork/types").AccountIdInput, territoryName: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; otherReactivateTerritory(targetAcc: import("@cessnetwork/types").AccountIdInput, territoryName: string, days: import("@cessnetwork/types").Day, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; territoryGrants(territoryName: string, receiver: import("@cessnetwork/types").AccountIdInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; territoryRename(oldName: string, newName: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; updateExpiredExec(oldBlock: import("@cessnetwork/types").BlockNumberInput, newBlock: import("@cessnetwork/types").BlockNumberInput, token: import("@cessnetwork/types").Token, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; updatePrice(options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; updateUserTerritoryLife(user: import("@cessnetwork/types").AccountIdInput, territoryName: string, deadline: import("@cessnetwork/types").BlockNumberInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryCurrencyReward(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryEraReward(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryReserveReward(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryRoundReward(era: number, block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryMasterPubKey(block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").TeeMasterKeyStatus | null>; queryWorkerByPubKey(puk?: import("@cessnetwork/types").TeeWorkerPublicKey, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").TeeWorker | import("@cessnetwork/types").TeeWorkerDetail[] | null>; queryEndpoints(puk?: import("@cessnetwork/types").TeeWorkerPublicKey, block?: import("@cessnetwork/types").BlockNumberInput): Promise<string | import("@cessnetwork/types").Endpoints[] | null>; queryWorkerStartBlockByPubKey(puk?: import("@cessnetwork/types").TeeWorkerPublicKey, block?: import("@cessnetwork/types").BlockNumberInput): Promise<number | import("@cessnetwork/types").WorkerAddedAt[]>; queryWorkerCount(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryBlockNumberByHash(hash?: import("@cessnetwork/types").BlockHashInput): Promise<number>; queryAccountById(account: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<AccountInfoData | import("@cessnetwork/types").AccountInfoDetail[] | null>; queryBlockHashByNumber(blockNumber: import("@cessnetwork/types").BlockNumberInput): Promise<string>; queryFinalizedHead(): Promise<string>; queryBlockDataByHash(hash?: import("@cessnetwork/types").BlockHashInput): Promise<import("@polkadot/types/interfaces").SignedBlock>; queryChainName(): Promise<string>; queryChainType(): Promise<string>; queryChainHealthStatus(): Promise<import("@polkadot/types/interfaces").Health>; queryChainProperties(): Promise<import("@polkadot/types/interfaces").ChainProperties>; queryChainVersion(): Promise<string>; queryCurrentNonce(): Promise<number>; getBlockByHash(hash: string): Promise<import("@polkadot/types/interfaces").SignedBlock>; getBlockHashByBlockNum(block?: import("@cessnetwork/types").BlockNumberInput): Promise<string>; getFinalizedHeadHash(): Promise<string>; isNetListening(): Promise<boolean>; getSystemSyncState(): Promise<import("@cessnetwork/types").SysSyncState>; getSystemVersion(): Promise<string>; rotateKeys(): Promise<string | any>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryValidators(block?: import("@cessnetwork/types").BlockNumberInput): Promise<string[]>; queryDisabledValidatorsFromSession(block?: import("@cessnetwork/types").BlockNumberInput): Promise<string[]>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryValidatorAndNominatorTotalCount(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryCurrentValidatorCount(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryTotalStakeByEraNumber(era?: import("@cessnetwork/types").EraInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint | import("@cessnetwork/types").StakeOnEra[]>; queryCurrentEraNumber(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryRewardPointByEraNumber(era?: import("@cessnetwork/types").EraInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingEraRewardPointDetail[] | import("@cessnetwork/types").StakingEraRewardPoint | null>; queryAllBonded(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingBounded[] | import("@polkadot/types/interfaces").AccountId | string>; queryValidatorCommission(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingValidator | import("@cessnetwork/types").StakingValidatorDetail[] | null>; queryValidatorRewardByEraNumber(era?: import("@cessnetwork/types").EraInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint | import("@cessnetwork/types").ValidatorOnEra[] | null>; queryLedger(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingLedger | import("@cessnetwork/types").StakingLedgerDetail[] | null>; queryStakeByEraNumber(era: import("@cessnetwork/types").EraInput, accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingExposure | import("@cessnetwork/types").StakingExposureDetail[] | null>; queryAllErasStakePaged(era: import("@cessnetwork/types").EraInput, accountId: import("@polkadot/types/interfaces").AccountId | string | Uint8Array, pageIndex?: number, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingExposurePaged | import("@cessnetwork/types").StakingExposurePagedDetail[] | null>; queryStakeOverviewByEra(era: import("@cessnetwork/types").EraInput, accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").PagedExposureMetadata | import("@cessnetwork/types").PagedExposureMetadataDetail[] | null>; queryNominator(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingNomination | import("@cessnetwork/types").StakingNominationDetail[] | null>; queryMinimumActiveStake(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryMinimumValidatorCount(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryActiveEra(block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StakingActiveEraInfo>; queryCanceledSlashPayout(block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint>; queryClaimedRewards(era: import("@cessnetwork/types").EraInput, accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<bigint[]>; queryCurrentPlannedSession(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryDisabledValidators(block?: import("@cessnetwork/types").BlockNumberInput): Promise<number[]>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryDealMap(txHash?: string, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").StorageOrder | import("@cessnetwork/types").StorageOrderDetail[] | null>; queryFileByFid(fid?: string, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").FileMetadata | import("@cessnetwork/types").FileMetadataDetail[] | null>; queryRestoralOrder(fragmentHash?: string, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").RestoralOrderInfo | import("@cessnetwork/types").RestoralOrderInfoDetail[] | null>; queryTaskFailedCount(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; queryUserHoldFileList(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").UserFileSliceInfo[] | import("@cessnetwork/types").UserFileSliceDetail[]>; uploadDeclaration(hash: string, segment: import("@cessnetwork/types").SegmentList[], user: import("@cessnetwork/types").UserBrief, filesize: bigint, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; deleteFile(owner: import("@cessnetwork/types").AccountIdInput, hash: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; transferReport(index: number, hash: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; generateRestoralOrder(hash: string, fragmentHash: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; claimRestoralOrder(fragmentHash: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; claimRestoralNoExistOrder(puk: Uint8Array, hash: string, fragmentHash: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; restoralOrderComplete(fragmentHash: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; certIdleSpace(spaceProofInfo: import("@cessnetwork/types").SpaceProofInfo, teeSignWithAcc: string, teeSign: string, teePuk: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; replaceIdleSpace(spaceProofInfo: import("@cessnetwork/types").SpaceProofInfo, teeSignWithAcc: string, teeSign: string, teePuk: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; calculateReport(teeSig: string, tagSigInfo: import("@cessnetwork/types").TagSigInfo, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; territoryFileDelivery(user: Uint8Array, hash: string, targetTerritory: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryOssByAccountId(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").OssInfo | import("@cessnetwork/types").OssDetail[] | null>; queryAuthorityListByAccountId(accountId?: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<string[] | import("@cessnetwork/types").OssAuthorityList[]>; authorize(accountId: import("@cessnetwork/types").AccountIdInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; proxyAuthorize(account: import("@cessnetwork/types").AccountIdInput, sig: import("@cessnetwork/types").ProxySig, payload: import("@cessnetwork/types").OssProxyAuthPayload, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; cancelOssAuthorize(accountId: import("@cessnetwork/types").AccountIdInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; registerOssNode(domain: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; updateOssEndpoint(domain: string, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; destroyOss(options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryBalanceHoldsByAccountId(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<any>; queryBalanceLocksByAccountId(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").AccountLock>; queryTotalIssuance(block?: import("@cessnetwork/types").BlockNumberInput): Promise<BigInt>; queryInactiveIssuance(block?: import("@cessnetwork/types").BlockNumberInput): Promise<BigInt>; transferAll(dest: import("@cessnetwork/types").MultiAddressInput, keepAlive: Boolean, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; transferAllowDeath(dest: import("@cessnetwork/types").MultiAddressInput, value: import("@cessnetwork/types").BalanceInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; transferKeepAlive(dest: import("@cessnetwork/types").MultiAddressInput, value: import("@cessnetwork/types").BalanceInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; burn(value: import("@cessnetwork/types").BalanceInput, keepAlive: Boolean, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; batchTransferKeepAlive(recipients: import(".").BatchTransferRecipient[], options?: import(".").BatchTransferOptions): Promise<import(".").BatchTransferResult>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & { new (...args: any[]): { queryChallengeSnapShot(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<import("@cessnetwork/types").ChallengeInfo | null>; queryCountedClear(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; updateCountedClear(accountId: import("@cessnetwork/types").AccountIdInput, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; queryCountedServiceFailed(accountId: import("@cessnetwork/types").AccountIdInput, block?: import("@cessnetwork/types").BlockNumberInput): Promise<number>; submitIdleProof(idleProof: import("@cessnetwork/types").SpaceProof, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; submitServiceProof(serviceProof: import("@cessnetwork/types").SpaceProof, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; submitVerifyIdleResult(totalProofHash: string | Uint8Array, front: number | import("@polkadot/types").U64 | bigint, rear: number | import("@polkadot/types").U64 | bigint, accumulator: import("@cessnetwork/types").Accumulator, result: Boolean | import("@polkadot/types").Bool, sig: import("@cessnetwork/types").TeeSig, teePuk: import("@cessnetwork/types").TeeWorkerPublicKey, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; submitVerifyServiceResult(serviceResult: import("@polkadot/types").Bool | Boolean, signature: import("@cessnetwork/types").TeeSig, bloomFilter: import("@cessnetwork/types").BloomFilter, teePuk: import("@cessnetwork/types").TeeWorkerPublicKey, options?: import("./utils").TransactionOptions): Promise<import("./utils").TransactionResult>; api: ApiPromise | null; keyring: KeyringPair | null; }; } & typeof ChainBase; /** * CESS ChainClient class implementing Chainer interface */ export declare class CESS extends CESS_base implements API { api: ApiPromise | null; keyring: KeyringPair | null; private provider; private metadata; private runtimeVersion; private genesisHash; systemProperties: SystemProperties | null; private readonly rpcAddr; private currentRpcAddr; private readonly ss58Format; private readonly connectionTimeout; private readonly reconnectTimeout; private readonly maxReconnectAttempts; private readonly enableEventListener; private tokenSymbol; tokenDecimals: number; private networkEnv; private chainName; private signatureAcc; private readonly name; private balance; private accountInfo; private rpcState; private isConnecting; private reconnectAttempts; private connectionPromise; private eventListeners; private subscriptions; constructor(config?: Partial<CESSConfig>); /** * Create a chain client with enhanced error handling and retry logic */ static newClient(config: CESSConfig): Promise<CESS>; /** * Initialize the chain client */ private initialize; /** * Connect to API with retry logic and fallback */ private connectToApi; private performConnection; private tryConnectToRpc; private withTimeout; /** * Load chain information */ private loadChainInfo; /** * Setup account from secret key which can be mnemonic, hex seed, or development account * Supports multiple ways to configure an account: * 1. Mnemonic phrase (12 or 24 words) * 2. Hex seed (0x prefixed 32-byte hex string) * 3. Development account (//Alice, //Bob, etc.) */ private setupAccount; /** * Update account balance and information */ updateAccountInfo(): Promise<void>; /** * Setup event listeners for connection monitoring */ private setupEventListeners; /** * Handle connection disconnection with auto-reconnect */ private handleDisconnection; private timeout; private sleep; private isValidMnemonic; on(event: string, callback: Function): void; off(event: string, callback: Function): void; private emit; /** * Get keyring pair * @returns KeyringPair or null */ getKeyring(): KeyringPair | null; /** * Set keyring pair * @param keyring KeyringPair */ setKeyring(keyring: KeyringPair): Promise<void>; get isConnected(): boolean; get currentBalance(): bigint; get currentSignatureAcc(): string; get chainInfo(): { name: string; networkEnv: string; tokenSymbol: string; tokenDecimals: number; ss58Format: number; genesisHash: `0x${string}` | undefined; runtimeVersion: Record<string, import("@polkadot/types-codec/types").AnyJson> | undefined; }; /** * Cleanup resources */ cleanup(): Promise<void>; /** * Get system chain name * @returns Chain name */ getSystemChainName(): string; /** * Get SDK name * @returns SDK name */ getSDKName(): string; /** * Get current RPC address * @returns Current RPC address */ getCurrentRpcAddr(): string; /** * Set RPC connection state * @param state RPC state */ setRpcState(state: boolean): void; /** * Get RPC connection state * @returns RPC state */ getRpcState(): boolean; /** * Get signature account address * @returns Signature account address */ getSignatureAcc(): string; /** * Get signature account public key * @returns Signature account public key */ getPublicKey(): Uint8Array; /** * Get Substrate API * @returns Substrate API */ getAPI(): ApiPromise; /** * Get metadata * @returns Metadata */ getMetadata(): any; /** * Get token symbol * @returns Token symbol */ getTokenSymbol(): string; /** * Get network environment * @returns Network environment */ getNetworkEnv(): string; /** * Get balance * @returns Balance */ getBalances(): bigint; /** * Set balance * @param balance Balance */ setBalances(balance: bigint): void; /** * Sign message * @param msg Message * @returns Signature */ sign(msg: Uint8Array): Promise<Uint8Array>; /** * Verify signature * @param msg Message * @param signature Signature * @returns Verification result */ verify(msg: string | Uint8Array, signature: Uint8Array): Promise<boolean>; /** * Reconnect RPC * @returns void */ reconnectRpc(): Promise<void>; /** * Internal RPC reconnection implementation * @param oldRpc Old RPC address * @param rpcs RPC address list * @returns Connection result */ private reconnectRpcInternal; /** * Close connection */ close(): Promise<void>; } export {}; //# sourceMappingURL=cess.d.ts.map