import type { Principal } from '@icp-sdk/core/principal'; import * as z from 'zod'; export declare const NotifyTopUpArgsSchema: z.ZodObject<{ block_index: z.ZodBigInt; canister_id: z.ZodPipe, z.ZodTransform>; }, z.core.$strict>; export declare const NotifyErrorSchema: z.ZodUnion; reason: z.ZodString; }, z.core.$strict>; }, z.core.$strict>, z.ZodObject<{ InvalidTransaction: z.ZodString; }, z.core.$strict>, z.ZodObject<{ Other: z.ZodObject<{ error_message: z.ZodString; error_code: z.ZodBigInt; }, z.core.$strict>; }, z.core.$strict>, z.ZodObject<{ Processing: z.ZodNull; }, z.core.$strict>, z.ZodObject<{ TransactionTooOld: z.ZodBigInt; }, z.core.$strict>]>; export declare const NotifyTopUpResultSchema: z.ZodUnion, z.ZodObject<{ Err: z.ZodUnion; reason: z.ZodString; }, z.core.$strict>; }, z.core.$strict>, z.ZodObject<{ InvalidTransaction: z.ZodString; }, z.core.$strict>, z.ZodObject<{ Other: z.ZodObject<{ error_message: z.ZodString; error_code: z.ZodBigInt; }, z.core.$strict>; }, z.core.$strict>, z.ZodObject<{ Processing: z.ZodNull; }, z.core.$strict>, z.ZodObject<{ TransactionTooOld: z.ZodBigInt; }, z.core.$strict>]>; }, z.core.$strict>]>; /** * Arguments for the CMC `notify_top_up` call. */ export interface NotifyTopUpArgs { /** Index of the block on the ICP ledger that contains the payment. */ block_index: bigint; /** The canister to top up. */ canister_id: Principal; } /** * Errors that can occur during a CMC notify call. */ export type NotifyError = /** The payment was returned to the caller. */ { Refunded: { block_index?: bigint; reason: string; }; } /** The transaction does not satisfy the CMC payment protocol. */ | { InvalidTransaction: string; } /** Other error. */ | { Other: { error_message: string; error_code: bigint; }; } /** The same payment is already being processed by a concurrent request. */ | { Processing: null; } /** The payment was too old to be processed. */ | { TransactionTooOld: bigint; }; /** * The result of a CMC `notify_top_up` call. * Returns the amount of cycles sent to the specified canister on success. */ export type NotifyTopUpResult = { Ok: bigint; } | { Err: NotifyError; };