ArgumentGenerator: ZodFunction<
    ZodTuple<
        [
            ZodType<Message<boolean>, ZodTypeDef, Message<boolean>>,
            ZodObject<
                {
                    all: ZodArray<
                        ZodUnion<
                            [
                                ZodObject<
                                    extendShape<{ raw: ... }, { type: ...; value: ... }>,
                                    "passthrough",
                                    ZodTypeAny,
                                    objectOutputType<
                                        extendShape<(...), (...)>,
                                        ZodTypeAny,
                                        "passthrough",
                                    >,
                                    objectInputType<
                                        extendShape<(...), (...)>,
                                        ZodTypeAny,
                                        "passthrough",
                                    >,
                                >,
                                ZodObject<
                                    extendShape<{ raw: ... }, { key: ...; type: ... }>,
                                    "passthrough",
                                    ZodTypeAny,
                                    objectOutputType<
                                        extendShape<(...), (...)>,
                                        ZodTypeAny,
                                        "passthrough",
                                    >,
                                    objectInputType<
                                        extendShape<(...), (...)>,
                                        ZodTypeAny,
                                        "passthrough",
                                    >,
                                >,
                                ZodObject<
                                    extendShape<{ raw: ... }, { key: ...; type: ...; value: ... }>,
                                    "passthrough",
                                    ZodTypeAny,
                                    objectOutputType<
                                        extendShape<(...), (...)>,
                                        ZodTypeAny,
                                        "passthrough",
                                    >,
                                    objectInputType<
                                        extendShape<(...), (...)>,
                                        ZodTypeAny,
                                        "passthrough",
                                    >,
                                >,
                            ],
                        >,
                        "many",
                    >;
                    flags: ZodArray<
                        ZodObject<
                            extendShape<
                                { raw: ZodString },
                                { key: ZodString; type: ZodLiteral<"Flag"> },
                            >,
                            "passthrough",
                            ZodTypeAny,
                            objectOutputType<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)> },
                                >,
                                ZodTypeAny,
                                "passthrough",
                            >,
                            objectInputType<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)> },
                                >,
                                ZodTypeAny,
                                "passthrough",
                            >,
                        >,
                        "many",
                    >;
                    optionFlags: ZodArray<
                        ZodObject<
                            extendShape<
                                { raw: ZodString },
                                { key: ZodString; type: ZodLiteral<"OptionFlag">; value: ZodString },
                            >,
                            "passthrough",
                            ZodTypeAny,
                            objectOutputType<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                ZodTypeAny,
                                "passthrough",
                            >,
                            objectInputType<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                ZodTypeAny,
                                "passthrough",
                            >,
                        >,
                        "many",
                    >;
                    phrases: ZodArray<
                        ZodObject<
                            extendShape<
                                { raw: ZodString },
                                { type: ZodLiteral<"Phrase">; value: ZodString },
                            >,
                            "passthrough",
                            ZodTypeAny,
                            objectOutputType<
                                extendShape<
                                    { raw: ZodString },
                                    { type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                ZodTypeAny,
                                "passthrough",
                            >,
                            objectInputType<
                                extendShape<
                                    { raw: ZodString },
                                    { type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                ZodTypeAny,
                                "passthrough",
                            >,
                        >,
                        "many",
                    >;
                },
                "passthrough",
                ZodTypeAny,
                objectOutputType<
                    {
                        all: ZodArray<
                            ZodUnion<
                                [
                                    ZodObject<
                                        extendShape<(...), (...)>,
                                        "passthrough",
                                        ZodTypeAny,
                                        objectOutputType<(...), (...), (...)>,
                                        objectInputType<(...), (...), (...)>,
                                    >,
                                    ZodObject<
                                        extendShape<(...), (...)>,
                                        "passthrough",
                                        ZodTypeAny,
                                        objectOutputType<(...), (...), (...)>,
                                        objectInputType<(...), (...), (...)>,
                                    >,
                                    ZodObject<
                                        extendShape<(...), (...)>,
                                        "passthrough",
                                        ZodTypeAny,
                                        objectOutputType<(...), (...), (...)>,
                                        objectInputType<(...), (...), (...)>,
                                    >,
                                ],
                            >,
                            "many",
                        >;
                        flags: ZodArray<
                            ZodObject<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)> },
                                >,
                                "passthrough",
                                ZodTypeAny,
                                objectOutputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                                objectInputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                            >,
                            "many",
                        >;
                        optionFlags: ZodArray<
                            ZodObject<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                "passthrough",
                                ZodTypeAny,
                                objectOutputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                                objectInputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                            >,
                            "many",
                        >;
                        phrases: ZodArray<
                            ZodObject<
                                extendShape<
                                    { raw: ZodString },
                                    { type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                "passthrough",
                                ZodTypeAny,
                                objectOutputType<
                                    extendShape<{ raw: ... }, { type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                                objectInputType<
                                    extendShape<{ raw: ... }, { type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                            >,
                            "many",
                        >;
                    },
                    ZodTypeAny,
                    "passthrough",
                >,
                objectInputType<
                    {
                        all: ZodArray<
                            ZodUnion<
                                [
                                    ZodObject<
                                        extendShape<(...), (...)>,
                                        "passthrough",
                                        ZodTypeAny,
                                        objectOutputType<(...), (...), (...)>,
                                        objectInputType<(...), (...), (...)>,
                                    >,
                                    ZodObject<
                                        extendShape<(...), (...)>,
                                        "passthrough",
                                        ZodTypeAny,
                                        objectOutputType<(...), (...), (...)>,
                                        objectInputType<(...), (...), (...)>,
                                    >,
                                    ZodObject<
                                        extendShape<(...), (...)>,
                                        "passthrough",
                                        ZodTypeAny,
                                        objectOutputType<(...), (...), (...)>,
                                        objectInputType<(...), (...), (...)>,
                                    >,
                                ],
                            >,
                            "many",
                        >;
                        flags: ZodArray<
                            ZodObject<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)> },
                                >,
                                "passthrough",
                                ZodTypeAny,
                                objectOutputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                                objectInputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                            >,
                            "many",
                        >;
                        optionFlags: ZodArray<
                            ZodObject<
                                extendShape<
                                    { raw: ZodString },
                                    { key: ZodString; type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                "passthrough",
                                ZodTypeAny,
                                objectOutputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                                objectInputType<
                                    extendShape<{ raw: ... }, { key: ...; type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                            >,
                            "many",
                        >;
                        phrases: ZodArray<
                            ZodObject<
                                extendShape<
                                    { raw: ZodString },
                                    { type: ZodLiteral<(...)>; value: ZodString },
                                >,
                                "passthrough",
                                ZodTypeAny,
                                objectOutputType<
                                    extendShape<{ raw: ... }, { type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                                objectInputType<
                                    extendShape<{ raw: ... }, { type: ...; value: ... }>,
                                    ZodTypeAny,
                                    "passthrough",
                                >,
                            >,
                            "many",
                        >;
                    },
                    ZodTypeAny,
                    "passthrough",
                >,
            >,
            ZodObject<
                {
                    index: ZodNumber;
                    phraseIndex: ZodNumber;
                    usedIndices: ZodSet<ZodNumber>;
                },
                "strip",
                ZodTypeAny,
                { index: number; phraseIndex: number; usedIndices: Set<number> },
                { index: number; phraseIndex: number; usedIndices: Set<number> },
            >,
        ],
        ZodUnknown,
    >,
    ZodAny,
>