@snowflake-so/safe-saber-walletkit
Version:
Snowflake Safe forked version of @saberhq/use-solana package. Used for integration purpose.
43 lines (42 loc) • 1.3 kB
TypeScript
import type React from 'react';
import type { WalletAdapterBuilder } from './adapters';
export declare enum DefaultWalletType {
Clover = "Clover",
Coin98 = "Coin98",
Exodus = "Exodus",
Glow = "Glow",
Huobi = "Huobi",
Ledger = "Ledger",
MathWallet = "MathWallet",
Phantom = "Phantom",
ReadOnly = "ReadOnly",
SecretKey = "SecretKey",
Slope = "Slope",
Solflare = "Solflare",
SolflareExtension = "SolflareExtension",
Sollet = "Sollet",
SolletExtension = "SolletExtension",
Solong = "Solong"
}
export declare type WalletTypeEnum<T> = {
[name: string]: T[keyof T] | string;
};
export declare type UnknownWalletType = WalletTypeEnum<Record<string, unknown>>;
export declare type WalletProviderMap<WalletType extends WalletTypeEnum<WalletType>> = {
[W in keyof WalletType]: WalletProviderInfo;
};
export declare const DEFAULT_WALLET_PROVIDERS: WalletProviderMap<typeof DefaultWalletType>;
export interface WalletProviderInfo {
/**
* Name of the wallet provider.
*/
readonly name: string;
/**
* URL of the wallet provider.
*/
readonly url: string;
icon: string | React.FC<React.SVGProps<SVGSVGElement>>;
makeAdapter: WalletAdapterBuilder;
isInstalled?: () => boolean;
isMobile?: boolean;
}