@lunch-money/kraken-extension
Version:
A wrapper around the Kraken API for enabling Lunch Money to gather information about a user's account.
28 lines (27 loc) • 1.1 kB
TypeScript
/**
* Serializable configuration for the connection
*/
export type LunchMoneyCryptoConnectionConfig = {
cryptoAccountId?: string | null;
apiKey: string;
};
export type LunchMoneyCryptoConnectionContext = {
[key: string]: any;
};
export interface CryptoBalance {
type: 'crypto' | 'cash';
raw: string;
asset: string;
amount: string;
}
export declare const providerNames: readonly ["coinbase", "coinbase_pro", "kraken", "binance", "wallet_ethereum"];
export type ProviderName = typeof providerNames[number];
export interface LunchMoneyCryptoConnectionBalances {
providerName: ProviderName;
balances: CryptoBalance[];
}
export type LunchMoneyCryptoConnectionInitialization = LunchMoneyCryptoConnectionBalances;
export interface LunchMoneyCryptoConnection<TConfig extends LunchMoneyCryptoConnectionConfig, TContext extends LunchMoneyCryptoConnectionContext> {
initiate(config: TConfig, context?: TContext): Promise<LunchMoneyCryptoConnectionInitialization>;
getBalances(config: TConfig, context?: TContext): Promise<LunchMoneyCryptoConnectionBalances>;
}