@xswap-link/sdk
Version:
JavaScript SDK for XSwap platform
75 lines (71 loc) • 2.01 kB
text/typescript
import { ContractCall, Transaction } from "@src/models";
export type ModalIntegrationThemeStyles = {
mainAccentLight?: string;
mainAccentDark?: string;
bgPrimary?: string;
bgSecondary?: string;
bgTertiary?: string;
textPrimary?: string;
textSecondary?: string;
textTertiary?: string;
textRed?: string;
textOrange?: string;
textGreen?: string;
clickPrimary?: string;
clickSecondary?: string;
clickTertiary?: string;
buttonPrBg?: string;
buttonPrText?: string;
buttonPrOffBg?: string;
buttonPrOffText?: string;
labelBg?: string;
labelText?: string;
successDark?: string;
successLight?: string;
infoDark?: string;
infoLight?: string;
warningDark?: string;
warningLight?: string;
errorDark?: string;
errorLight?: string;
chainlinkLogo?: string;
fontFamily?: string;
};
export type ModalIntegrationStyles = Pick<
ModalIntegrationThemeStyles,
"mainAccentLight" | "mainAccentDark" | "textSecondary" | "fontFamily"
> & { width?: string };
export type ModalIntegrationPayload = {
integratorId: string;
dstChain?: string;
dstToken?: string;
srcChain?: string;
srcToken?: string;
customContractCalls?: ContractCall[];
desc?: string;
dstDisplayToken?: string;
lightTheme?: boolean;
defaultWalletPicker?: boolean;
styles?: ModalIntegrationStyles;
onPendingTransactionsChange?: (transactions: Transaction[]) => void;
dstTokenLocked?: boolean;
dstChainLocked?: boolean;
srcTokenLocked?: boolean;
srcChainLocked?: boolean;
onDstTokenChange?: (
token: { address: string; symbol: string } | undefined,
) => void;
onDstChainChange?: (chain: string | undefined) => void;
onSrcTokenChange?: (
token: { address: string; symbol: string } | undefined,
) => void;
onSrcChainChange?: (chain: string | undefined) => void;
onConnectWallet?: () => void;
bridge?: boolean;
override?: {
apiUrl?: string;
};
integratorFee?: number;
integratorFeeReceiverAddress?: string;
highlightedDstTokens?: string[];
};