import type { Idl, Program } from "@coral-xyz/anchor"; import { PublicKey } from "@solana/web3.js"; import type { CommitmentEvent } from "./types.js"; /** * Privacy-pool mints copied from the relayer's global position-tree classifier. * Position commitments use non-pool destination mints at the same tree ID. */ export declare const POSITION_TREE_POOL_MINTS: readonly PublicKey[]; export declare function isGlobalPositionCommitment(event: CommitmentEvent): boolean; /** * Rebuild the one global position tree shared across every position mint. * This mirrors the relayer: scan all mints for the position tree ID, then drop * normal privacy-pool mint events before sorting by the global leaf index. */ export declare function buildGlobalPositionTreeFromEvents(params: { program: Program; positionTreeId?: number; depth?: number; additionalEvents?: readonly CommitmentEvent[]; includeProtectedEvents?: boolean; strictLeafIndices?: boolean; }): Promise<{ tree: import("../merkle.js").MerkleTree; events: CommitmentEvent[]; latestSignature: string; }>;