/** * @name TxSubmitRelay * @description Hosted submit-only relay for already-signed Solana transactions. * The relay never signs, never receives keypair bytes, and returns confirmation * status, explorer URL, and retry guidance. */ import * as http from 'http'; import type { SapMcpConfig } from '../../config-runtime/src/env.js'; import { type TransactionEncoding, type TransactionSubmitCommitment } from '../../tools/src/transaction-tools.js'; /** @name TX_SUBMIT_PATH - HTTP path for the transaction submit relay endpoint. */ export declare const TX_SUBMIT_PATH = "/tx/submit"; /** @name TxSubmitRelayInput - Parsed input for the tx submit relay, containing the signed transaction bytes and commitment level. */ export interface TxSubmitRelayInput { signedTransaction?: string; transaction?: string; encoding?: TransactionEncoding; skipPreflight?: boolean; maxRetries?: number; confirmationTimeoutMs?: number; commitment?: TransactionSubmitCommitment; intentId?: string; } /** @name TxSubmitRelayResult - Result of submitting a signed transaction through the relay, including signature and confirmation status. */ export interface TxSubmitRelayResult { success: boolean; submitted: true; signature: string; confirmationStatus: string; retrySafe: boolean; slot?: number; explorerUrl: string; audit: { intentId: string; submittedVia: 'hosted-submit-relay'; signerBoundary: 'already-signed-transaction-only'; confirmationTimeoutMs: number; desiredCommitment: TransactionSubmitCommitment; retrySafe: boolean; secretMaterial: 'never-received'; rule: string; }; } /** @name submitSignedTransactionFromHttp - Accepts a pre-signed transaction from an HTTP request, submits it to the Solana network, and polls for confirmation. Never signs or receives keypair bytes. */ export declare function submitSignedTransactionFromHttp(req: http.IncomingMessage, config: SapMcpConfig): Promise; /** @name parseTxSubmitRelayInput - Validates and parses the raw HTTP input into a TxSubmitRelayInput, checking commitment level and encoding format. */ export declare function parseTxSubmitRelayInput(value: unknown): TxSubmitRelayInput; //# sourceMappingURL=tx-relay.d.ts.map