/** * @name tools/perpspad/dbc-launch-tool * @description Registers `sap_perpspad_launch_dbc` — the DIRECT Meteora DBC * launch builder (Option 2). Replaces PerpsPad's unsignable /api/v1/launch * response with locally-built, co-signed transactions. Feature parity with * the legacy build_launch: same inputs (ticker, name, dev-buy, perp backing * recorded as metadata), plus the escrow split wired in. */ import BN from 'bn.js'; import { deriveDbcPool, METADATA_PROGRAM_ID, deriveMintMetadata } from './dbc-launch.js'; import { registerPerpspadPipelineTool } from './perpspad-pipeline.js'; /** Perp backing policy attached to a DBC launch (read by the keeper). */ export interface DbcBackingPolicy { readonly underlying: string; readonly leverage: number; readonly direction: 'long' | 'short'; readonly status: 'pending-keeper'; } export declare function toQuoteBaseUnits(amount: number, decimals: number): BN; /** inputSchema for `sap_perpspad_launch_dbc` (exported for unit tests). */ export declare const DBC_LAUNCH_INPUT_SCHEMA: Record; /** * Validates the perp backing triple (underlying + leverage + direction). * All-or-nothing: either all three are present (and valid) or none is. * Returns the normalized policy, or an Error describing the violation. */ export declare function parseBackingPolicy(input: Record): { policy: DbcBackingPolicy | undefined; error: Error | undefined; }; /** Registers `sap_perpspad_launch_dbc` on the MCP server. */ export declare function registerDbcLaunchTool(server: Parameters[0], context: Parameters[1]): void; export { deriveDbcPool, deriveMintMetadata, METADATA_PROGRAM_ID }; //# sourceMappingURL=dbc-launch-tool.d.ts.map