charms-wallet-js
Version:
Professional Bitcoin wallet library for Charms ecosystem using @scure stack
172 lines • 7 kB
TypeScript
import { Network, NetworkConfig } from './types';
export declare const DERIVATION_PATHS: {
readonly TAPROOT: "m/86'/0'/0'";
readonly SEGWIT: "m/84'/0'/0'";
readonly LEGACY: "m/44'/0'/0'";
};
export declare const DEFAULT_DERIVATION_PATH: "m/86'/0'/0'";
export declare const NETWORKS: Record<Network, NetworkConfig>;
export declare const DEFAULT_NETWORK: Network;
export declare const ADDRESS_PATTERNS: {
readonly MAINNET_P2TR: RegExp;
readonly TESTNET_P2TR: RegExp;
readonly MAINNET_P2WPKH: RegExp;
readonly TESTNET_P2WPKH: RegExp;
readonly LEGACY: RegExp;
readonly TESTNET_LEGACY: RegExp;
};
export declare const TRANSACTION_CONSTANTS: {
readonly MIN_FEE_RATE: 1;
readonly DEFAULT_FEE_RATE: 10;
readonly MAX_FEE_RATE: 1000;
readonly DUST_THRESHOLD: 546;
readonly MIN_UTXO_AMOUNT: 1000;
readonly MAX_OP_RETURN_SIZE: 80;
};
export declare const BIP39_CONSTANTS: {
readonly ENTROPY_BITS_12: 128;
readonly ENTROPY_BITS_24: 256;
readonly DEFAULT_WORD_COUNT: 12;
readonly SUPPORTED_WORD_COUNTS: readonly [12, 15, 18, 21, 24];
};
export declare const STORAGE_CONSTANTS: {
readonly DEFAULT_WALLET_KEY: "charms_wallet";
readonly DEFAULT_SETTINGS_KEY: "charms_wallet_settings";
readonly ENCRYPTION_ALGORITHM: "AES-GCM";
readonly PBKDF2_ITERATIONS: 100000;
readonly SALT_LENGTH: 16;
readonly IV_LENGTH: 12;
};
export declare const API_ENDPOINTS: {
readonly BLOCKSTREAM_MAINNET: "https://blockstream.info/api";
readonly BLOCKSTREAM_TESTNET: "https://blockstream.info/testnet/api";
readonly MEMPOOL_MAINNET: "https://mempool.space/api";
readonly MEMPOOL_TESTNET: "https://mempool.space/testnet/api";
};
export declare const MONITORING_CONSTANTS: {
readonly DEFAULT_POLL_INTERVAL: 10000;
readonly MAX_POLL_INTERVAL: 60000;
readonly MIN_POLL_INTERVAL: 5000;
readonly MAX_RETRY_ATTEMPTS: 3;
readonly RETRY_DELAY: 2000;
};
export declare const ERROR_CODES: {
readonly INVALID_MNEMONIC: "INVALID_MNEMONIC";
readonly INVALID_ADDRESS: "INVALID_ADDRESS";
readonly INVALID_NETWORK: "INVALID_NETWORK";
readonly INVALID_AMOUNT: "INVALID_AMOUNT";
readonly INVALID_FEE_RATE: "INVALID_FEE_RATE";
readonly INSUFFICIENT_FUNDS: "INSUFFICIENT_FUNDS";
readonly UTXO_NOT_FOUND: "UTXO_NOT_FOUND";
readonly TRANSACTION_TOO_LARGE: "TRANSACTION_TOO_LARGE";
readonly DUST_OUTPUT: "DUST_OUTPUT";
readonly KEY_DERIVATION_FAILED: "KEY_DERIVATION_FAILED";
readonly SIGNING_FAILED: "SIGNING_FAILED";
readonly ENCRYPTION_FAILED: "ENCRYPTION_FAILED";
readonly DECRYPTION_FAILED: "DECRYPTION_FAILED";
readonly API_REQUEST_FAILED: "API_REQUEST_FAILED";
readonly NETWORK_TIMEOUT: "NETWORK_TIMEOUT";
readonly RATE_LIMITED: "RATE_LIMITED";
readonly STORAGE_NOT_AVAILABLE: "STORAGE_NOT_AVAILABLE";
readonly WALLET_NOT_FOUND: "WALLET_NOT_FOUND";
readonly STORAGE_QUOTA_EXCEEDED: "STORAGE_QUOTA_EXCEEDED";
};
export declare const VERSION_INFO: {
readonly LIBRARY_VERSION: "1.0.0";
readonly SUPPORTED_BIP_VERSIONS: readonly ["BIP32", "BIP39", "BIP86"];
readonly MIN_NODE_VERSION: "16.0.0";
};
export declare const UTILS_CONSTANTS: {
readonly SATOSHIS_PER_BTC: 100000000;
readonly BYTES_PER_KB: 1024;
readonly MS_PER_SECOND: 1000;
readonly SECONDS_PER_MINUTE: 60;
readonly MINUTES_PER_HOUR: 60;
};
export declare const CHARMS_WALLET_CONSTANTS: {
readonly DERIVATION_PATHS: {
readonly TAPROOT: "m/86'/0'/0'";
readonly SEGWIT: "m/84'/0'/0'";
readonly LEGACY: "m/44'/0'/0'";
};
readonly DEFAULT_DERIVATION_PATH: "m/86'/0'/0'";
readonly NETWORKS: Record<Network, NetworkConfig>;
readonly DEFAULT_NETWORK: "testnet";
readonly ADDRESS_PATTERNS: {
readonly MAINNET_P2TR: RegExp;
readonly TESTNET_P2TR: RegExp;
readonly MAINNET_P2WPKH: RegExp;
readonly TESTNET_P2WPKH: RegExp;
readonly LEGACY: RegExp;
readonly TESTNET_LEGACY: RegExp;
};
readonly TRANSACTION_CONSTANTS: {
readonly MIN_FEE_RATE: 1;
readonly DEFAULT_FEE_RATE: 10;
readonly MAX_FEE_RATE: 1000;
readonly DUST_THRESHOLD: 546;
readonly MIN_UTXO_AMOUNT: 1000;
readonly MAX_OP_RETURN_SIZE: 80;
};
readonly BIP39_CONSTANTS: {
readonly ENTROPY_BITS_12: 128;
readonly ENTROPY_BITS_24: 256;
readonly DEFAULT_WORD_COUNT: 12;
readonly SUPPORTED_WORD_COUNTS: readonly [12, 15, 18, 21, 24];
};
readonly STORAGE_CONSTANTS: {
readonly DEFAULT_WALLET_KEY: "charms_wallet";
readonly DEFAULT_SETTINGS_KEY: "charms_wallet_settings";
readonly ENCRYPTION_ALGORITHM: "AES-GCM";
readonly PBKDF2_ITERATIONS: 100000;
readonly SALT_LENGTH: 16;
readonly IV_LENGTH: 12;
};
readonly API_ENDPOINTS: {
readonly BLOCKSTREAM_MAINNET: "https://blockstream.info/api";
readonly BLOCKSTREAM_TESTNET: "https://blockstream.info/testnet/api";
readonly MEMPOOL_MAINNET: "https://mempool.space/api";
readonly MEMPOOL_TESTNET: "https://mempool.space/testnet/api";
};
readonly MONITORING_CONSTANTS: {
readonly DEFAULT_POLL_INTERVAL: 10000;
readonly MAX_POLL_INTERVAL: 60000;
readonly MIN_POLL_INTERVAL: 5000;
readonly MAX_RETRY_ATTEMPTS: 3;
readonly RETRY_DELAY: 2000;
};
readonly ERROR_CODES: {
readonly INVALID_MNEMONIC: "INVALID_MNEMONIC";
readonly INVALID_ADDRESS: "INVALID_ADDRESS";
readonly INVALID_NETWORK: "INVALID_NETWORK";
readonly INVALID_AMOUNT: "INVALID_AMOUNT";
readonly INVALID_FEE_RATE: "INVALID_FEE_RATE";
readonly INSUFFICIENT_FUNDS: "INSUFFICIENT_FUNDS";
readonly UTXO_NOT_FOUND: "UTXO_NOT_FOUND";
readonly TRANSACTION_TOO_LARGE: "TRANSACTION_TOO_LARGE";
readonly DUST_OUTPUT: "DUST_OUTPUT";
readonly KEY_DERIVATION_FAILED: "KEY_DERIVATION_FAILED";
readonly SIGNING_FAILED: "SIGNING_FAILED";
readonly ENCRYPTION_FAILED: "ENCRYPTION_FAILED";
readonly DECRYPTION_FAILED: "DECRYPTION_FAILED";
readonly API_REQUEST_FAILED: "API_REQUEST_FAILED";
readonly NETWORK_TIMEOUT: "NETWORK_TIMEOUT";
readonly RATE_LIMITED: "RATE_LIMITED";
readonly STORAGE_NOT_AVAILABLE: "STORAGE_NOT_AVAILABLE";
readonly WALLET_NOT_FOUND: "WALLET_NOT_FOUND";
readonly STORAGE_QUOTA_EXCEEDED: "STORAGE_QUOTA_EXCEEDED";
};
readonly VERSION_INFO: {
readonly LIBRARY_VERSION: "1.0.0";
readonly SUPPORTED_BIP_VERSIONS: readonly ["BIP32", "BIP39", "BIP86"];
readonly MIN_NODE_VERSION: "16.0.0";
};
readonly UTILS_CONSTANTS: {
readonly SATOSHIS_PER_BTC: 100000000;
readonly BYTES_PER_KB: 1024;
readonly MS_PER_SECOND: 1000;
readonly SECONDS_PER_MINUTE: 60;
readonly MINUTES_PER_HOUR: 60;
};
};
//# sourceMappingURL=constants.d.ts.map