DepositParamsSchema: ZodObject<
    extendShape<
        {
            depositAmounts: ZodEffects<
                ZodArray<
                    ZodObject<
                        {
                            asset: ZodUnion<
                                [
                                    ZodType<Asset, Asset>,
                                    ZodEffects<
                                        ZodDiscriminatedUnion<(...), (...)>,
                                        Asset,
                                        (...) | (...) | (...),
                                    >,
                                ],
                            >;
                            value: ZodUnion<
                                [
                                    ZodBigInt,
                                    ZodEffects<ZodNumber, bigint, number>,
                                    ZodEffects<ZodString, bigint, string>,
                                ],
                            >;
                        },
                        "strip",
                        { asset: Asset; value: bigint },
                        {
                            asset:
                                | Asset
                                | { type: TON }
                                | { jettonMaster: string | Address; type: JETTON }
                                | { currencyId: number; type: EXTRA_CURRENCY };
                            value: string | number | bigint;
                        },
                    >,
                >,
                Allocation[],
                {
                    asset: | Asset
                    | { type: TON }
                    | { jettonMaster: string | Address; type: JETTON }
                    | { currencyId: number; type: EXTRA_CURRENCY };
                    value: string | number | bigint;
                }[],
            >;
            pool: ZodUnion<
                [ZodEffects<ZodString, Address, string>, ZodType<Address, Address>],
            >;
        },
        {
            nextDeposit: ZodOptional<
                ZodObject<
                    {
                        depositAmounts: ZodEffects<
                            ZodOptional<
                                ZodObject<
                                    { asset: ZodUnion<(...)>; value: ZodUnion<(...)> },
                                    "strip",
                                    { asset: Asset; value: bigint },
                                    {
                                        asset: (...) | (...) | (...) | (...);
                                        value: (...) | (...) | (...);
                                    },
                                >,
                            >,
                            undefined
                            | Allocation,

                                | undefined
                                | {
                                    asset: | Asset
                                    | { type: ... }
                                    | { jettonMaster: ...; type: ... }
                                    | { currencyId: ...; type: ... };
                                    value: string | number | bigint;
                                },
                        >;
                        pool: ZodUnion<
                            [
                                ZodEffects<ZodString, Address, string>,
                                ZodType<Address, Address>,
                            ],
                        >;
                    },
                    "strip",
                    { depositAmounts?: Allocation; pool: Address },
                    {
                        depositAmounts?: {
                            asset:
                                | Asset
                                | { type: TON }
                                | { jettonMaster: (...) | (...); type: JETTON }
                                | { currencyId: number; type: EXTRA_CURRENCY };
                            value: string | number | bigint;
                        };
                        pool: string
                        | Address;
                    },
                >,
            >;
        },
    >,
    "strip",
    {
        depositAmounts: Allocation[];
        nextDeposit?: { depositAmounts?: Allocation; pool: Address };
        pool: Address;
    },
    {
        depositAmounts: {
            asset: | Asset
            | { type: TON }
            | { jettonMaster: string | Address; type: JETTON }
            | { currencyId: number; type: EXTRA_CURRENCY };
            value: string | number | bigint;
        }[];
        nextDeposit?: {
            depositAmounts?: {
                asset: | Asset
                | { type: TON }
                | { jettonMaster: string | Address; type: JETTON }
                | { currencyId: number; type: EXTRA_CURRENCY };
                value: string | number | bigint;
            };
            pool: string
            | Address;
        };
        pool: string
        | Address;
    },
> = ...