@funkit/connect
Version:
Funkit Connect SDK elevates DeFi apps via web2 sign-ins and one-click checkouts.
29 lines (28 loc) • 1.38 kB
TypeScript
import type { MeldQuote, MeldServiceProvider } from '@funkit/api-base';
import React from 'react';
import type { Hex } from 'viem';
import { type PaymentMethodInfo } from '../../../domains/paymentMethods';
import { type CheckoutModalCommonState, FunCheckoutStep, type ModalStepComponentProps, type ModalStepInfo } from '../stepTransition';
export type InputAmountState = CheckoutModalCommonState & {
paymentMethodInfo: PaymentMethodInfo;
fiatAmount?: number;
fiatCurrency?: string;
quote?: MeldQuote;
isInputInFiat?: boolean;
/** Preserved token amount from a previous visit (source of truth in EXACT_IN) */
assetAmount?: number;
/** Source token identifier — used to detect asset changes and discard stale values */
sourceTokenKey?: string;
};
export type InputAmountNext = Record<string, never> | {
fiatAmount: number | undefined;
fiatCurrency?: string;
provider?: MeldServiceProvider;
quote?: MeldQuote;
nextStep?: FunCheckoutStep.SOURCE_CHANGE | FunCheckoutStep.MELD_CURRENCY_SELECT | FunCheckoutStep.MELD_QUOTES | FunCheckoutStep.MELD_REDIRECT;
} | {
nextStep: FunCheckoutStep.CHECKOUT_COMPLETE;
txHash: Hex;
};
export declare const InputAmountInfo: ModalStepInfo<FunCheckoutStep.INPUT_AMOUNT>;
export declare function InputAmount(props: ModalStepComponentProps<FunCheckoutStep.INPUT_AMOUNT>): React.JSX.Element;