import { Connection, PublicKey } from "@solana/web3.js"; import type { PreflightOptions, ShieldCachePort } from "./types.js"; /** * Checks that run before the prover. * * Proving costs 10–30 seconds. Every check here is a single RPC call, and each * one pre-empts an on-chain failure whose message tells the user nothing they * can act on. The delegate check is the clearest example: the program requires * `user_token.delegate.is_none()`, so anyone who ever approved a DEX has a * permanently broken deposit path that reports only "Invalid token account * authority" — with no hint that revoking a delegate would fix it. * * These are advisory in the sense that the chain enforces them anyway. They are * not advisory in the sense that skipping them produces a materially worse * product. */ export declare function preflightShield(params: { connection: Connection; amount: bigint; mint: PublicKey; signer: { publicKey: PublicKey; tokenAccount: PublicKey; }; programId?: PublicKey; options?: PreflightOptions; cache?: ShieldCachePort; computeUnitLimit?: number; computeUnitPriceMicroLamports?: number; }): Promise;