import { z } from 'zod/mini';
/** Runtime schemas for decoded staking-contract events. */
export declare const EthHashRegEx: RegExp;
export declare const EthHashZod: z.ZodMiniString<string>;
export declare const EvmStakeAddedEventNameZod: z.ZodMiniLiteral<"StakeAdded">;
export declare const EvmStakeRemovedEventNameZod: z.ZodMiniLiteral<"StakeRemoved">;
export declare const EvmStakeWithdrawnEventNameZod: z.ZodMiniLiteral<"StakeWithdrawn">;
export declare const EvmStakeEventNameZod: z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"StakeAdded">, z.ZodMiniLiteral<"StakeRemoved">, z.ZodMiniLiteral<"StakeWithdrawn">]>;
export declare const EvmStakeEventArgsZod: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>, z.ZodMiniBigInt<bigint>, z.ZodMiniBigInt<bigint>], null>;
export declare const EvmStakeEventZod: z.ZodMiniObject<{
    address: z.ZodMiniString<string>;
    args: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>, z.ZodMiniBigInt<bigint>, z.ZodMiniBigInt<bigint>], null>;
    blockHash: z.ZodMiniString<string>;
    blockNumber: z.ZodMiniNumber<number>;
    eventName: z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"StakeAdded">, z.ZodMiniLiteral<"StakeRemoved">, z.ZodMiniLiteral<"StakeWithdrawn">]>;
    transactionHash: z.ZodMiniString<string>;
    transactionIndex: z.ZodMiniNumber<number>;
}, z.core.$strip>;
export type EvmStakeEvent = z.infer<typeof EvmStakeEventZod>;
export declare const isEvmStakeEvent: <T>(value: T) => value is T & {
    address: string;
    args: [string, string, bigint, bigint];
    blockHash: string;
    blockNumber: number;
    eventName: "StakeAdded" | "StakeRemoved" | "StakeWithdrawn";
    transactionHash: string;
    transactionIndex: number;
};
export declare const asEvmStakeEvent: {
    <T>(value: T): (T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        eventName: "StakeAdded" | "StakeRemoved" | "StakeWithdrawn";
        transactionHash: string;
        transactionIndex: number;
    }) | undefined;
    <T>(value: T, assert: import("@ariestools/sdk").ZodFactoryConfig): T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        eventName: "StakeAdded" | "StakeRemoved" | "StakeWithdrawn";
        transactionHash: string;
        transactionIndex: number;
    };
};
export declare const toEvmStakeEvent: {
    (value: unknown): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        eventName: "StakeAdded" | "StakeRemoved" | "StakeWithdrawn";
        transactionHash: string;
        transactionIndex: number;
    } | undefined;
    (value: unknown, assert: import("@ariestools/sdk").ZodFactoryConfig): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        eventName: "StakeAdded" | "StakeRemoved" | "StakeWithdrawn";
        transactionHash: string;
        transactionIndex: number;
    };
};
export declare const EvmStakeAddedEventZod: z.ZodMiniObject<{
    address: z.ZodMiniString<string>;
    args: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>, z.ZodMiniBigInt<bigint>, z.ZodMiniBigInt<bigint>], null>;
    blockHash: z.ZodMiniString<string>;
    blockNumber: z.ZodMiniNumber<number>;
    transactionHash: z.ZodMiniString<string>;
    transactionIndex: z.ZodMiniNumber<number>;
    eventName: z.ZodMiniLiteral<"StakeAdded">;
}, z.core.$strip>;
export type EvmStakeAddedEvent = z.infer<typeof EvmStakeAddedEventZod>;
export declare const isEvmStakeAddedEvent: <T>(value: T) => value is T & {
    address: string;
    args: [string, string, bigint, bigint];
    blockHash: string;
    blockNumber: number;
    transactionHash: string;
    transactionIndex: number;
    eventName: "StakeAdded";
};
export declare const asEvmStakeAddedEvent: {
    <T>(value: T): (T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeAdded";
    }) | undefined;
    <T>(value: T, assert: import("@ariestools/sdk").ZodFactoryConfig): T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeAdded";
    };
};
export declare const toEvmStakeAddedEvent: {
    (value: unknown): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeAdded";
    } | undefined;
    (value: unknown, assert: import("@ariestools/sdk").ZodFactoryConfig): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeAdded";
    };
};
export declare const EvmStakeRemovedEventZod: z.ZodMiniObject<{
    address: z.ZodMiniString<string>;
    args: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>, z.ZodMiniBigInt<bigint>, z.ZodMiniBigInt<bigint>], null>;
    blockHash: z.ZodMiniString<string>;
    blockNumber: z.ZodMiniNumber<number>;
    transactionHash: z.ZodMiniString<string>;
    transactionIndex: z.ZodMiniNumber<number>;
    eventName: z.ZodMiniLiteral<"StakeRemoved">;
}, z.core.$strip>;
export type EvmStakeRemovedEvent = z.infer<typeof EvmStakeRemovedEventZod>;
export declare const isEvmStakeRemovedEvent: <T>(value: T) => value is T & {
    address: string;
    args: [string, string, bigint, bigint];
    blockHash: string;
    blockNumber: number;
    transactionHash: string;
    transactionIndex: number;
    eventName: "StakeRemoved";
};
export declare const asEvmStakeRemovedEvent: {
    <T>(value: T): (T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeRemoved";
    }) | undefined;
    <T>(value: T, assert: import("@ariestools/sdk").ZodFactoryConfig): T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeRemoved";
    };
};
export declare const toEvmStakeRemovedEvent: {
    (value: unknown): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeRemoved";
    } | undefined;
    (value: unknown, assert: import("@ariestools/sdk").ZodFactoryConfig): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeRemoved";
    };
};
export declare const EvmStakeWithdrawnEventZod: z.ZodMiniObject<{
    address: z.ZodMiniString<string>;
    args: z.ZodMiniTuple<readonly [z.ZodMiniString<string>, z.ZodMiniString<string>, z.ZodMiniBigInt<bigint>, z.ZodMiniBigInt<bigint>], null>;
    blockHash: z.ZodMiniString<string>;
    blockNumber: z.ZodMiniNumber<number>;
    transactionHash: z.ZodMiniString<string>;
    transactionIndex: z.ZodMiniNumber<number>;
    eventName: z.ZodMiniLiteral<"StakeWithdrawn">;
}, z.core.$strip>;
export type EvmStakeWithdrawnEvent = z.infer<typeof EvmStakeWithdrawnEventZod>;
export declare const isEvmStakeWithdrawnEvent: <T>(value: T) => value is T & {
    address: string;
    args: [string, string, bigint, bigint];
    blockHash: string;
    blockNumber: number;
    transactionHash: string;
    transactionIndex: number;
    eventName: "StakeWithdrawn";
};
export declare const asEvmStakeWithdrawnEvent: {
    <T>(value: T): (T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeWithdrawn";
    }) | undefined;
    <T>(value: T, assert: import("@ariestools/sdk").ZodFactoryConfig): T & {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeWithdrawn";
    };
};
export declare const toEvmStakeWithdrawnEvent: {
    (value: unknown): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeWithdrawn";
    } | undefined;
    (value: unknown, assert: import("@ariestools/sdk").ZodFactoryConfig): {
        address: string;
        args: [string, string, bigint, bigint];
        blockHash: string;
        blockNumber: number;
        transactionHash: string;
        transactionIndex: number;
        eventName: "StakeWithdrawn";
    };
};
//# sourceMappingURL=EvmStakeEventZod.d.ts.map