import { Address, UnixTimestamp } from "@solana/kit";
import { SvmSpokeClient } from "@across-protocol/contracts";
import { EventName, EventWithData, SvmCpiEventsClient, SVMProvider } from "../../arch/svm";
export declare class MockSvmCpiEventsClient extends SvmCpiEventsClient {
    private events;
    private slotHeight;
    chainId: number;
    minBlockRange: number;
    numberOfDeposits: import("ethers").BigNumber;
    constructor(programId?: Address, chainId?: number);
    setSlotHeight(slotHeight: bigint): void;
    setEvents(events: EventWithData[]): void;
    clearEvents(name?: EventName): void;
    queryEvents(eventName: EventName, fromSlot?: bigint, toSlot?: bigint): Promise<EventWithData[]>;
    getRpc(): SVMProvider;
    deposit(deposit: SvmSpokeClient.FundsDeposited & Partial<EventWithData>): EventWithData;
    fillRelay(fill: SvmSpokeClient.FilledRelay & Partial<EventWithData>): EventWithData;
    requestSlowFill(slowFillRequest: SvmSpokeClient.RequestedSlowFill & Partial<EventWithData>): EventWithData;
    protected generateEvent(inputs: {
        address: Address;
        event: EventName;
        args: Record<string, unknown>;
        slot?: bigint;
    }): {
        name: "FilledRelay" | "FundsDeposited" | "RelayedRootBundle" | "ExecutedRelayerRefundRoot" | "BridgedToHubPool" | "PausedDeposits" | "PausedFills" | "SetXDomainAdmin" | "EmergencyDeletedRootBundle" | "RequestedSlowFill" | "ClaimedRelayerRefund" | "TokensBridged" | "TransferredOwnership";
        slot: bigint;
        signature: import("@solana/kit").Signature;
        program: Address;
        data: Record<string, unknown>;
        confirmationStatus: string;
        blockTime: UnixTimestamp;
    };
}
//# sourceMappingURL=MockSvmCpiEventsClient.d.ts.map