Interface IProvider
interface IProvider {
network: Network;
buildTransaction(
request: BuildTransactionRequest,
): Promise<BuildTransactionResponse>;
call<T = unknown>(
endpoint: string,
params?: Record<string, unknown>,
): Promise<T>;
estimateFee(_tx: unknown): Promise<IFeesResponse>;
getAccount(address: KleverAddress): Promise<IAccount>;
getBalance(address: KleverAddress, assetId?: AssetID): Promise<bigint>;
getBlock(
blockHashOrNumber: BlockIdentifier,
): Promise<null | IBlockResponse>;
getBlockNumber(): Promise<number>;
getNetwork(): Network;
getNonce(address: KleverAddress): Promise<number>;
getTransaction(
hash: string | TransactionHash,
): Promise<null | ITransactionResponse>;
getTransactionReceipt(
hash: string | TransactionHash,
): Promise<null | IReceipt[]>;
getTransactionUrl(hash: string | TransactionHash): string;
off(event: ProviderEvent, listener: (...args: unknown[]) => void): void;
on(event: ProviderEvent, listener: (...args: unknown[]) => void): void;
queryContract(params: IContractQueryParams): Promise<IContractQueryResult>;
sendRawTransaction(signedTx: unknown): Promise<TransactionHash>;
sendRawTransactions(signedTxs: unknown[]): Promise<TransactionHash[]>;
waitForTransaction(
hash: string | TransactionHash,
confirmations?: number,
onProgress?: (
status: "pending" | "failed" | "confirming" | "timeout",
data: {
attempts: number;
confirmations?: number;
maxAttempts: number;
required?: number;
transaction?: ITransactionResponse;
},
) => void,
): Promise<null | ITransactionResponse>;
}
network: Network;
buildTransaction(
request: BuildTransactionRequest,
): Promise<BuildTransactionResponse>;
call<T = unknown>(
endpoint: string,
params?: Record<string, unknown>,
): Promise<T>;
estimateFee(_tx: unknown): Promise<IFeesResponse>;
getAccount(address: KleverAddress): Promise<IAccount>;
getBalance(address: KleverAddress, assetId?: AssetID): Promise<bigint>;
getBlock(
blockHashOrNumber: BlockIdentifier,
): Promise<null | IBlockResponse>;
getBlockNumber(): Promise<number>;
getNetwork(): Network;
getNonce(address: KleverAddress): Promise<number>;
getTransaction(
hash: string | TransactionHash,
): Promise<null | ITransactionResponse>;
getTransactionReceipt(
hash: string | TransactionHash,
): Promise<null | IReceipt[]>;
getTransactionUrl(hash: string | TransactionHash): string;
off(event: ProviderEvent, listener: (...args: unknown[]) => void): void;
on(event: ProviderEvent, listener: (...args: unknown[]) => void): void;
queryContract(params: IContractQueryParams): Promise<IContractQueryResult>;
sendRawTransaction(signedTx: unknown): Promise<TransactionHash>;
sendRawTransactions(signedTxs: unknown[]): Promise<TransactionHash[]>;
waitForTransaction(
hash: string | TransactionHash,
confirmations?: number,
onProgress?: (
status: "pending" | "failed" | "confirming" | "timeout",
data: {
attempts: number;
confirmations?: number;
maxAttempts: number;
required?: number;
transaction?: ITransactionResponse;
},
) => void,
): Promise<null | ITransactionResponse>;
}
Implemented by
Methods
buildTransaction
Parameters
- request: BuildTransactionRequest
Returns Promise<BuildTransactionResponse>
call
estimateFee
Parameters
- _tx: unknown
Returns Promise<IFeesResponse>
getAccount
Parameters
- address: KleverAddress
Returns Promise<IAccount>
getBalance
Parameters
- address: KleverAddress
OptionalassetId: AssetID
Returns Promise<bigint>
getBlock
Parameters
- blockHashOrNumber: BlockIdentifier
Returns Promise<null | IBlockResponse>
getBlockNumber
Returns Promise<number>
getNetwork
Returns Network
getNonce
Parameters
- address: KleverAddress
Returns Promise<number>
getTransaction
Parameters
- hash: string | TransactionHash
Returns Promise<null | ITransactionResponse>
getTransactionReceipt
Parameters
- hash: string | TransactionHash
Returns Promise<null | IReceipt[]>
getTransactionUrl
Parameters
- hash: string | TransactionHash
Returns string
off
Parameters
- event: ProviderEvent
- listener: (...args: unknown[]) => void
Returns void
on
Parameters
- event: ProviderEvent
- listener: (...args: unknown[]) => void
Returns void
queryContract
Parameters
- params: IContractQueryParams
Returns Promise<IContractQueryResult>
sendRawTransaction
Parameters
- signedTx: unknown
Returns Promise<TransactionHash>
sendRawTransactions
Parameters
- signedTxs: unknown[]
Returns Promise<TransactionHash[]>
waitForTransaction
- waitForTransaction(
hash: string | TransactionHash,
confirmations?: number,
onProgress?: (
status: "pending" | "failed" | "confirming" | "timeout",
data: {
attempts: number;
confirmations?: number;
maxAttempts: number;
required?: number;
transaction?: ITransactionResponse;
},
) => void,
): Promise<null | ITransactionResponse>Parameters
- hash: string | TransactionHash
Optionalconfirmations: numberOptionalonProgress: (
status: "pending" | "failed" | "confirming" | "timeout",
data: {
attempts: number;
confirmations?: number;
maxAttempts: number;
required?: number;
transaction?: ITransactionResponse;
},
) => void
Returns Promise<null | ITransactionResponse>