import type { EvmAddress } from "./evm.js"; import { type BigintLike, type ProtocolApprovalMode, type ProtocolExecutionPlan } from "./protocol-plans.js"; export type GoalTreasuryDonationPlan = ProtocolExecutionPlan<"treasury.donate-goal"> & { treasuryAddress: EvmAddress; underlyingTokenAddress: EvmAddress; amount: string; approvalIncluded: boolean; }; export type BudgetTreasuryDonationPlan = ProtocolExecutionPlan<"treasury.donate-budget"> & { treasuryAddress: EvmAddress; underlyingTokenAddress: EvmAddress; amount: string; approvalIncluded: boolean; }; export type GoalTreasuryDonationRecordedEvent = { donor: EvmAddress; sourceToken: EvmAddress; sourceAmount: bigint; superTokenAmount: bigint; totalRaised: bigint; }; export type BudgetTreasuryDonationRecordedEvent = { donor: EvmAddress; sourceToken: EvmAddress; sourceAmount: bigint; superTokenAmount: bigint; }; export type GoalTreasuryReceiptSummary = { donationRecorded: GoalTreasuryDonationRecordedEvent | null; }; export type BudgetTreasuryReceiptSummary = { donationRecorded: BudgetTreasuryDonationRecordedEvent | null; }; export declare function buildGoalTreasuryDonationPlan(params: { network?: string; treasuryAddress: string; underlyingTokenAddress: string; amount: BigintLike; currentAllowance?: BigintLike | null; approvalAmount?: BigintLike; approvalMode?: ProtocolApprovalMode; }): GoalTreasuryDonationPlan; export declare function buildBudgetTreasuryDonationPlan(params: { network?: string; treasuryAddress: string; underlyingTokenAddress: string; amount: BigintLike; currentAllowance?: BigintLike | null; approvalAmount?: BigintLike; approvalMode?: ProtocolApprovalMode; }): BudgetTreasuryDonationPlan; export declare function decodeGoalTreasuryReceipt(logs: readonly unknown[]): GoalTreasuryReceiptSummary; export declare function decodeBudgetTreasuryReceipt(logs: readonly unknown[]): BudgetTreasuryReceiptSummary; export declare function serializeGoalTreasuryReceipt(summary: GoalTreasuryReceiptSummary): Record; export declare function serializeBudgetTreasuryReceipt(summary: BudgetTreasuryReceiptSummary): Record;