UNPKG

@coin-voyage/paykit

Version:

Seamless crypto payments. Onboard users from any chain, any coin into your app with one click.

39 lines (38 loc) 2.21 kB
import { WalletProps } from "@coin-voyage/crypto/types/wallet"; import { ChainId, ChainType, Currency, CurrencyBase, type PayOrder } from "@coin-voyage/shared/types"; import { PaymentDetails, PayOrderParams } from "@coin-voyage/shared/types/api"; import { PaymentMethod } from "../types/enums"; import { ROUTES } from "../types/routes"; import { CurrencyAndQuoteID } from "../types/state"; import { usePayOrderQuotes } from "./usePayOrderQuotes"; /** Loads a PayOrder + manages the corresponding modal. */ export interface PaymentState { setPayId: (id: string | null) => Promise<void>; createDepositPayOrder: (params: PayOrderParams, onError?: (message: string) => void) => Promise<void>; copyDepositPayOrder: () => Promise<void>; clearUserSelection: () => void; payOrder: PayOrder | undefined; paymentMethod: PaymentMethod | undefined; setPaymentMethod: React.Dispatch<React.SetStateAction<PaymentMethod | undefined>>; connectorChainType: ChainType | undefined; setConnectorChainType: React.Dispatch<React.SetStateAction<ChainType | undefined>>; selectedWallet: WalletProps | undefined; setSelectedWallet: React.Dispatch<React.SetStateAction<WalletProps | undefined>>; payOrderQuotes: ReturnType<typeof usePayOrderQuotes>; selectedCurrencyOption: CurrencyAndQuoteID | undefined; setSelectedCurrencyOption: (option: CurrencyAndQuoteID | undefined) => void; payFromWallet: (currency: CurrencyAndQuoteID) => Promise<string | undefined>; payToAddress: (currency: CurrencyBase) => Promise<PaymentDetails | undefined>; refreshOrder: () => Promise<void>; senderEnsName: string | undefined; payToAddressChainId: ChainId | undefined; setPayToAddressChainId: React.Dispatch<React.SetStateAction<ChainId | undefined>>; payToAddressCurrency: Currency | undefined; setPayToAddressCurrency: React.Dispatch<React.SetStateAction<Currency | undefined>>; } export declare function usePaymentState({ payOrder, setPayOrder, setRoute, log, }: { payOrder: PayOrder | undefined; setPayOrder: (o: PayOrder) => void; setRoute: React.Dispatch<React.SetStateAction<ROUTES>>; log: (...args: unknown[]) => void; }): PaymentState;