UNPKG

@qso-soft/shared

Version:

Shared library for QSO-soft

83 lines (82 loc) 2.31 kB
import { RangeByIdFilter } from '../helpers'; import { AutoGasNetworks } from '../managers/auto-gas/types'; import { NumberRange } from './common'; import { UserModuleConfig } from './module'; export interface SettingsDelays { betweenTransactions: NumberRange; betweenModules: NumberRange; betweenWallets: NumberRange; betweenRetries: number; betweenRestarts: number; } export interface AutoGasNetworkSettings { useAutoGas: boolean; cex: 'binance' | 'okx'; minBalance: number; withdrawToAmount: NumberRange; withdrawSleep: NumberRange; expectedBalance?: NumberRange; } export type AutoGasSettings = Partial<Record<AutoGasNetworks, AutoGasNetworkSettings>>; export interface ShuffleSettings { wallets: boolean; modules: boolean; } interface InvitesAmount { } export interface DefaultSettings { routes?: Route[]; scrollRoutes: Route[]; baseRoutes: Route[]; zkSyncRoutes: Route[]; zoraRoutes: Route[]; layerZeroRoutes: Route[]; shuffle: ShuffleSettings; threads: number; txAttempts: number; delay: SettingsDelays; invitesAmount: InvitesAmount; autoGas: AutoGasSettings; txAttemptsToChangeProxy: number; useProxy: boolean; useRestartInMain: boolean; useSavedModules: boolean; idFilter: RangeByIdFilter; } export type Route = 'base' | 'flow-1' | 'flow-2' | 'flow-3' | 'flow-4' | 'one-time' | 'low-cost' | 'top-up-balance' | 'warm-up' | 'volume' | 'dev' | 'checkers' | 'new-accounts' | 'polyhedra' | 'alt-layer' | 'check-balances'; export type Settings = DefaultSettings; export type RouteSettings = { modules: UserModuleConfig[]; countModules: NumberRange; limitWalletsToUse: number; splitModuleCount?: boolean; }; export interface BinanceSettings { proxy: string; secretKeys: { secret: string; apiKey: string; }; } export interface OkxSettings { proxy: string; accountName: string; accounts: { [key: string]: { apiKey: string; secret: string; password: string; }; }; } export interface TelegramSettings { token: { modulesInfo: string; criticalErrors: string; }; IDs: { modulesInfo: number[]; criticalErrors: number[]; }; } export {};