/** * Service Worker Inscription Orchestration * * Handles the inscription of chunk reassembly service workers. * Extracted from orchestrator.ts for better maintainability. */ import { PrivateKey } from '@bsv/sdk'; import type { ChunkManifest } from '../chunking/index.js'; import type { InscribedFile } from '../inscription/inscription.types.js'; import type { OrchestratorCallbacks } from '../orchestration/orchestration.types.js'; import type { IndexerService } from '../../lib/service-providers/IndexerService.js'; /** * Result of service worker inscription */ export interface ServiceWorkerInscriptionResult { serviceWorkerInscription: InscribedFile; totalCost: number; splitTxid?: string; } /** * Handles service worker inscription for chunked files * * Inscribes a new service worker or reuses a cached one if the content hash matches. * * @param allChunkManifests - All chunk manifests that need reassembly * @param previousInscriptions - Map of previously inscribed files * @param primaryContentUrl - Base URL for content delivery * @param paymentPk - Private key for payment * @param indexer - Indexer service for broadcasting transactions * @param destinationAddress - Destination address for the inscription * @param satsPerKb - Satoshis per KB for fees * @param dryRun - Whether this is a dry run * @param inscriptionsCount - Current number of inscriptions (for progress tracking) * @param totalFiles - Total number of files (for progress tracking) * @param spentUtxos - Set of spent UTXOs to avoid double-spending * @param callbacks - Optional progress callbacks * @returns Service worker inscription result */ export declare function handleServiceWorkerInscription(allChunkManifests: ChunkManifest[], previousInscriptions: Map, primaryContentUrl: string, paymentPk: PrivateKey, indexer: IndexerService, destinationAddress: string, satsPerKb: number, dryRun: boolean, inscriptionsCount: number, totalFiles: number, spentUtxos: Set, callbacks?: OrchestratorCallbacks): Promise; //# sourceMappingURL=inscriber.d.ts.map