@kryptogo/kryptogokit-sdk-react
Version:
KryptogoKit offers a comprehensive web3 wallet solution with seamless KryptoGO Auth integration and multi-wallet connection support. Designed for users. Built for developers.
23 lines (22 loc) • 1.03 kB
TypeScript
import type { PublicClient, TransactionReceipt } from 'viem';
type TransactionStatus = 'pending' | 'confirmed' | 'failed';
export interface Transaction {
hash: string;
description: string;
status: TransactionStatus;
confirmations?: number;
}
export type NewTransaction = Omit<Transaction, 'status'>;
export declare function createTransactionStore({ provider: initialProvider }: {
provider: PublicClient;
}): {
addTransaction: (account: string, chainId: number, transaction: NewTransaction) => void;
clearTransactions: (account: string, chainId: number) => void;
getTransactions: (account: string, chainId: number) => Transaction[];
onTransactionStatus: (fn: (txStatus: TransactionReceipt["status"]) => void) => () => void;
onChange: (fn: () => void) => () => void;
setProvider: (newProvider: PublicClient) => void;
waitForPendingTransactions: (account: string, chainId: number) => Promise<void>;
};
export type TransactionStore = ReturnType<typeof createTransactionStore>;
export {};