import { type AssetTypeResponse, type ConfigurationOptions, Fireblocks, type PublicKeyInformation, type TransactionResponse } from '@fireblocks/ts-sdk'; import type { Client } from 'openapi-fetch'; import { type FireblocksAssetId, FireblocksSigner } from './fireblocks_signer.js'; import type { components, paths } from './openapi/schema.js'; export type FireblocksIntegration = ({ config?: never; instance: Fireblocks; } | { config: ConfigurationOptions; instance?: never; }) & { vaultId: `${number}`; }; export declare class FireblocksService { client: Client; constructor(client: Client); /** * Retrieve a fireblocks SDK from a Fireblocks integration */ getSdk(integration: FireblocksIntegration): Fireblocks; /** * Retrieve a fireblocks signer from a Fireblocks integration */ getSigner(integration: FireblocksIntegration): FireblocksSigner; /** * Get fireblocks wallet pubkey compressed */ getPubkey(integration: FireblocksIntegration, assetId: (string & {}) | FireblocksAssetId): Promise; /** * List Fireblocks supported assets */ getAssets(integration: FireblocksIntegration): Promise; /** * Sign a Solana transaction on Fireblocks */ signSolTx(integration: FireblocksIntegration, tx: components['schemas']['SOLStakeTx'], assetId: 'SOL_TEST' | 'SOL', note?: string): Promise<{ signed_tx: { data: components['schemas']['SOLPreparedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Create a Cardano transaction in Fireblocks without waiting for completion */ createAdaTx(integration: FireblocksIntegration, tx: components['schemas']['ADAUnsignedTx'], note?: string): Promise; /** * Wait for a Cardano transaction to complete and prepare it for broadcast */ waitForAdaTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['ADAUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['ADASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a Cardano transaction on Fireblocks */ signAdaTx(integration: FireblocksIntegration, tx: components['schemas']['ADAUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['ADASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Create an ATOM transaction in Fireblocks without waiting for completion */ createAtomTx(integration: FireblocksIntegration, tx: components['schemas']['ATOMUnsignedTx'] | components['schemas']['ATOMStakeUnsignedTx'], note?: string): Promise; /** * Wait for an ATOM transaction to complete and prepare it for broadcast */ waitForAtomTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['ATOMUnsignedTx'] | components['schemas']['ATOMStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['ATOMSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign an ATOM transaction on Fireblocks (combines createAtomTx and waitForAtomTxCompletion) */ signAtomTx(integration: FireblocksIntegration, tx: components['schemas']['ATOMUnsignedTx'] | components['schemas']['ATOMStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['ATOMSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a DYDX transaction on Fireblocks */ /** * Create a DYDX transaction in Fireblocks without waiting for completion */ createDydxTx(integration: FireblocksIntegration, tx: components['schemas']['DYDXUnsignedTx'] | components['schemas']['DYDXStakeUnsignedTx'], note?: string): Promise; /** * Wait for a DYDX transaction to complete and prepare it for broadcast */ waitForDydxTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['DYDXUnsignedTx'] | components['schemas']['DYDXStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['DYDXSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a DYDX transaction on Fireblocks (combines createDydxTx and waitForDydxTxCompletion) */ signDydxTx(integration: FireblocksIntegration, tx: components['schemas']['DYDXUnsignedTx'] | components['schemas']['DYDXStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['DYDXSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a FET transaction on Fireblocks */ /** * Create a FET transaction in Fireblocks without waiting for completion */ createFetTx(integration: FireblocksIntegration, tx: components['schemas']['FETUnsignedTx'] | components['schemas']['FETStakeUnsignedTx'], note?: string): Promise; /** * Wait for a FET transaction to complete and prepare it for broadcast */ waitForFetTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['FETUnsignedTx'] | components['schemas']['FETStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['FETSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a FET transaction on Fireblocks (combines createFetTx and waitForFetTxCompletion) */ signFetTx(integration: FireblocksIntegration, tx: components['schemas']['FETUnsignedTx'] | components['schemas']['FETStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['FETSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a OM transaction on Fireblocks */ /** * Create a OM transaction in Fireblocks without waiting for completion */ createOmTx(integration: FireblocksIntegration, tx: components['schemas']['OMUnsignedTx'] | components['schemas']['OMStakeUnsignedTx'], note?: string): Promise; /** * Wait for a OM transaction to complete and prepare it for broadcast */ waitForOmTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['OMUnsignedTx'] | components['schemas']['OMStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['OMSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a OM transaction on Fireblocks (combines createOmTx and waitForOmTxCompletion) */ signOmTx(integration: FireblocksIntegration, tx: components['schemas']['OMUnsignedTx'] | components['schemas']['OMStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['OMSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a INJ transaction on Fireblocks */ /** * Create a INJ transaction in Fireblocks without waiting for completion */ createInjTx(integration: FireblocksIntegration, tx: components['schemas']['INJUnsignedTx'] | components['schemas']['INJStakeUnsignedTx'], note?: string): Promise; /** * Wait for a INJ transaction to complete and prepare it for broadcast */ waitForInjTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['INJUnsignedTx'] | components['schemas']['INJStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['INJSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a INJ transaction on Fireblocks (combines createInjTx and waitForInjTxCompletion) */ signInjTx(integration: FireblocksIntegration, tx: components['schemas']['INJUnsignedTx'] | components['schemas']['INJStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['INJSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a KAVA transaction on Fireblocks */ /** * Create a KAVA transaction in Fireblocks without waiting for completion */ createKavaTx(integration: FireblocksIntegration, tx: components['schemas']['KAVAUnsignedTx'] | components['schemas']['KAVAStakeUnsignedTx'], note?: string): Promise; /** * Wait for a KAVA transaction to complete and prepare it for broadcast */ waitForKavaTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['KAVAUnsignedTx'] | components['schemas']['KAVAStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['KAVASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a KAVA transaction on Fireblocks (combines createKavaTx and waitForKavaTxCompletion) */ signKavaTx(integration: FireblocksIntegration, tx: components['schemas']['KAVAUnsignedTx'] | components['schemas']['KAVAStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['KAVASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a CRO transaction on Fireblocks */ /** * Create a CRO transaction in Fireblocks without waiting for completion */ createCroTx(integration: FireblocksIntegration, tx: components['schemas']['CROUnsignedTx'] | components['schemas']['CROStakeUnsignedTx'], note?: string): Promise; /** * Wait for a CRO transaction to complete and prepare it for broadcast */ waitForCroTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['CROUnsignedTx'] | components['schemas']['CROStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['CROSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a CRO transaction on Fireblocks (combines createCroTx and waitForCroTxCompletion) */ signCroTx(integration: FireblocksIntegration, tx: components['schemas']['CROUnsignedTx'] | components['schemas']['CROStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['CROSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a NOBLE transaction on Fireblocks */ /** * Create a NOBLE transaction in Fireblocks without waiting for completion */ createNobleTx(integration: FireblocksIntegration, tx: components['schemas']['DYDXUnsignedTx'], note?: string): Promise; /** * Wait for a NOBLE transaction to complete and prepare it for broadcast */ waitForNobleTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['DYDXUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['DYDXSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a NOBLE transaction on Fireblocks (combines createNobleTx and waitForNobleTxCompletion) */ signNobleTx(integration: FireblocksIntegration, tx: components['schemas']['DYDXUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['DYDXSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a OSMO transaction on Fireblocks */ /** * Create a OSMO transaction in Fireblocks without waiting for completion */ createOsmoTx(integration: FireblocksIntegration, tx: components['schemas']['OSMOUnsignedTx'] | components['schemas']['OSMOStakeUnsignedTx'], note?: string): Promise; /** * Wait for a OSMO transaction to complete and prepare it for broadcast */ waitForOsmoTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['OSMOUnsignedTx'] | components['schemas']['OSMOStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['OSMOSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a OSMO transaction on Fireblocks (combines createOsmoTx and waitForOsmoTxCompletion) */ signOsmoTx(integration: FireblocksIntegration, tx: components['schemas']['OSMOUnsignedTx'] | components['schemas']['OSMOStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['OSMOSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a TIA transaction on Fireblocks */ /** * Create a TIA transaction in Fireblocks without waiting for completion */ createTiaTx(integration: FireblocksIntegration, tx: components['schemas']['TIAUnsignedTx'] | components['schemas']['TIAStakeUnsignedTx'], note?: string): Promise; /** * Wait for a TIA transaction to complete and prepare it for broadcast */ waitForTiaTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['TIAUnsignedTx'] | components['schemas']['TIAStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['TIASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a TIA transaction on Fireblocks (combines createTiaTx and waitForTiaTxCompletion) */ signTiaTx(integration: FireblocksIntegration, tx: components['schemas']['TIAUnsignedTx'] | components['schemas']['TIAStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['TIASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a ZETA transaction on Fireblocks */ /** * Create a ZETA transaction in Fireblocks without waiting for completion */ createZetaTx(integration: FireblocksIntegration, tx: components['schemas']['ZETAUnsignedTx'] | components['schemas']['ZETAStakeUnsignedTx'], note?: string): Promise; /** * Wait for a ZETA transaction to complete and prepare it for broadcast */ waitForZetaTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['ZETAUnsignedTx'] | components['schemas']['ZETAStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['ZETASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a ZETA transaction on Fireblocks (combines createZetaTx and waitForZetaTxCompletion) */ signZetaTx(integration: FireblocksIntegration, tx: components['schemas']['ZETAUnsignedTx'] | components['schemas']['ZETAStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['ZETASignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Create a DOT transaction in Fireblocks without waiting for completion */ createDotTx(integration: FireblocksIntegration, tx: components['schemas']['DOTUnsignedTx'], note?: string): Promise; /** * Wait for a DOT transaction to complete and prepare it for broadcast */ waitForDotTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['DOTUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['DOTSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a DOT transaction on Fireblocks */ signDotTx(integration: FireblocksIntegration, tx: components['schemas']['DOTUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['DOTSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Create a KSM transaction in Fireblocks without waiting for completion */ createKsmTx(integration: FireblocksIntegration, tx: components['schemas']['KSMUnsignedTx'], note?: string): Promise; /** * Wait for a KSM transaction to complete and prepare it for broadcast */ waitForKsmTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['KSMUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['KSMSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a KSM transaction on Fireblocks */ signKsmTx(integration: FireblocksIntegration, tx: components['schemas']['KSMUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['KSMSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign an ETH transaction with given integration using Fireblocks raw signing */ signEthTx(integration: FireblocksIntegration, tx: components['schemas']['ETHUnsignedTx'], assetId: 'ETH_TEST_HOODI' | 'ETH', note?: string): Promise<{ signed_tx: { data: components['schemas']['ETHSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign and broadcast an ETH transaction with given integration using Fireblocks contract call feature */ signAndBroadcastEthTx(integration: FireblocksIntegration, tx: components['schemas']['ETHUnsignedTx'], assetId: 'ETH_TEST_HOODI' | 'ETH', fireblocksDestinationId: string, note?: string): Promise; /** * Sign a POL transaction with given integration using Fireblocks raw signing */ signPolTx(integration: FireblocksIntegration, tx: components['schemas']['POLUnsignedTx'], assetId: 'ETH_TEST5' | 'ETH', note?: string): Promise<{ signed_tx: { data: components['schemas']['POLSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign and broadcast a POL transaction with given integration using Fireblocks contract call feature */ signAndBroadcastPolTx(integration: FireblocksIntegration, tx: components['schemas']['POLUnsignedTx'], assetId: 'ETH_TEST5' | 'ETH', fireblocksDestinationId: string, note?: string): Promise; /** * Create a TON transaction in Fireblocks without waiting for completion */ createTonTx(integration: FireblocksIntegration, tx: components['schemas']['TONTx'], assetId: 'TON_TEST' | 'TON', note?: string): Promise; /** * Wait for a TON transaction to complete and prepare it for broadcast */ waitForTonTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['TONTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['TONPreparedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a TON transaction on Fireblocks */ signTonTx(integration: FireblocksIntegration, tx: components['schemas']['TONTx'], assetId: 'TON_TEST' | 'TON', note?: string): Promise<{ signed_tx: { data: components['schemas']['TONPreparedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Create a XTZ transaction in Fireblocks without waiting for completion */ createXtzTx(integration: FireblocksIntegration, tx: components['schemas']['XTZUnsignedTx'], note?: string): Promise; /** * Wait for a XTZ transaction to complete and prepare it for broadcast */ waitForXtzTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['XTZUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['XTZSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a XTZ transaction on Fireblocks (combines createXtzTx and waitForXtzTxCompletion) */ signXtzTx(integration: FireblocksIntegration, tx: components['schemas']['XTZUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['XTZSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Create a NEAR transaction in Fireblocks without waiting for completion */ createNearTx(integration: FireblocksIntegration, tx: components['schemas']['NEARTx'], assetId: 'NEAR_TEST' | 'NEAR', note?: string): Promise; /** * Wait for a NEAR transaction to complete and prepare it for broadcast */ waitForNearTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['NEARTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['NEARSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a NEAR transaction on Fireblocks (combines createNearTx and waitForNearTxCompletion) */ signNearTx(integration: FireblocksIntegration, tx: components['schemas']['NEARTx'], assetId: 'NEAR_TEST' | 'NEAR', note?: string): Promise<{ signed_tx: { data: components['schemas']['NEARSignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a Trx transaction on Fireblocks */ createTrxTx(integration: FireblocksIntegration, tx: components['schemas']['TRXUnsignedTx'], note?: string): Promise; waitForTrxTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['TRXUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['TRXPreparedTx']; }; fireblocks_tx: TransactionResponse; }>; signTrxTx(integration: FireblocksIntegration, tx: components['schemas']['TRXUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['TRXPreparedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a SEI transaction on Fireblocks */ /** * Create a SEI transaction in Fireblocks without waiting for completion */ createSeiTx(integration: FireblocksIntegration, tx: components['schemas']['SEIUnsignedTx'] | components['schemas']['SEIStakeUnsignedTx'], note?: string): Promise; /** * Wait for a SEI transaction to complete and prepare it for broadcast */ waitForSeiTxCompletion(integration: FireblocksIntegration, tx: components['schemas']['SEIUnsignedTx'] | components['schemas']['SEIStakeUnsignedTx'], fbTx: TransactionResponse): Promise<{ signed_tx: { data: components['schemas']['SEISignedTx']; }; fireblocks_tx: TransactionResponse; }>; /** * Sign a SEI transaction on Fireblocks (combines createSeiTx and waitForSeiTxCompletion) */ signSeiTx(integration: FireblocksIntegration, tx: components['schemas']['SEIUnsignedTx'] | components['schemas']['SEIStakeUnsignedTx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['SEISignedTx']; }; fireblocks_tx: TransactionResponse; }>; signSuiTx(integration: FireblocksIntegration, tx: components['schemas']['SUITx'], note?: string): Promise<{ signed_tx: { data: components['schemas']['SUIBroadcastTxPayload']; }; fireblocks_tx: TransactionResponse; }>; } //# sourceMappingURL=fireblocks.d.ts.map