/** * Milestone-Gated Token Locks * * Developer tokens locked until specific on-chain milestones are achieved. * No pure time-lock — dev must *earn* their unlock by growing the project. * * Milestone types (all verifiable on-chain): * - HolderCount: requires authority attestation (off-chain holders oracle) * - MarketCapQuote: read from DBC pool's quote_reserve (proxy for mcap) * - CumulativeVolume: read from DBC pool's metrics.total_trading_fee_paid * - GraduationAchieved: pool.is_migrated == true * - AgentTasksCompleted: agent_binding.lifetime_tasks_completed >= threshold * * Each milestone has an unlock_bps — the % of total locked that unlocks. * Unlock tranches can be called independently as milestones are hit. */ import { PublicKey } from "@solana/web3.js"; import type { MilestoneLockParams, MilestoneType, SdkInstructions } from "../types/index.js"; /** * Build a create_milestone_lock instruction. */ export declare function buildCreateMilestoneLockInstruction(vault: PublicKey, creatorTokenAccount: PublicKey, vaultTokenAccount: PublicKey, baseMint: PublicKey, creator: PublicKey, params: MilestoneLockParams, tokenProgram?: PublicKey): SdkInstructions; /** * Build a verify_milestone instruction. * Anyone can call this — on-chain state is checked. * If milestone is newly met, partial unlock occurs automatically. * * @param holderCountAttestation Required for HolderCount milestones (oracle value) */ export declare function buildVerifyMilestoneInstruction(vault: PublicKey, vaultTokenAccount: PublicKey, creatorTokenAccount: PublicKey, dbcPool: PublicKey, baseMint: PublicKey, creator: PublicKey, caller: PublicKey, milestoneIndex: number, holderCountAttestation?: number, tokenProgram?: PublicKey): SdkInstructions; /** * Standard 4-tranche dev schedule aligned with project growth. * Total: 100% of locked amount, released as project hits milestones. */ export declare function defaultDevMilestones(totalLockedAmount: bigint): MilestoneLockParams; /** * Agent-aligned dev schedule — dev tokens unlock as the agent delivers. */ export declare function agentAlignedMilestones(totalLockedAmount: bigint): MilestoneLockParams; export interface MilestoneStatus { index: number; type: MilestoneType; threshold: bigint; unlockBps: number; achieved: boolean; unlockedAmount: bigint; } /** * Compute current milestone statuses from vault on-chain state. * Pass dbcPool quote_reserve and cumulative_fee for automatic checks. */ export declare function checkMilestoneStatus(params: MilestoneLockParams, currentDbcQuoteReserve: bigint, cumulativeVolume: bigint, isMigrated: boolean, agentTasksCompleted: bigint): MilestoneStatus[]; //# sourceMappingURL=milestone-tracker.d.ts.map