gemini20FlashLite: ModelReference<
    z.ZodObject<
        z.objectUtil.extendShape<
            {
                maxOutputTokens: z.ZodOptional<z.ZodNumber>;
                stopSequences: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
                temperature: z.ZodOptional<z.ZodNumber>;
                topK: z.ZodOptional<z.ZodNumber>;
                topP: z.ZodOptional<z.ZodNumber>;
                version: z.ZodOptional<z.ZodString>;
            },
            {
                functionCallingConfig: z.ZodOptional<
                    z.ZodObject<
                        {
                            allowedFunctionNames: z.ZodOptional<
                                z.ZodArray<z.ZodString, "many">,
                            >;
                            mode: z.ZodOptional<
                                z.ZodEnum<["MODE_UNSPECIFIED", "AUTO", "ANY", "NONE"]>,
                            >;
                        },
                        "strip",
                        z.ZodTypeAny,
                        {
                            allowedFunctionNames?: string[];
                            mode?: "MODE_UNSPECIFIED"
                            | "AUTO"
                            | "ANY"
                            | "NONE";
                        },
                        {
                            allowedFunctionNames?: string[];
                            mode?: "MODE_UNSPECIFIED"
                            | "AUTO"
                            | "ANY"
                            | "NONE";
                        },
                    >,
                >;
                googleSearchRetrieval: z.ZodOptional<
                    z.ZodObject<
                        { disableAttribution: z.ZodOptional<z.ZodBoolean> },
                        "strip",
                        z.ZodTypeAny,
                        { disableAttribution?: boolean },
                        { disableAttribution?: boolean },
                    >,
                >;
                location: z.ZodOptional<z.ZodString>;
                safetySettings: z.ZodOptional<
                    z.ZodArray<
                        z.ZodObject<
                            {
                                category: z.ZodNativeEnum<typeof HarmCategory>;
                                threshold: z.ZodNativeEnum<typeof HarmBlockThreshold>;
                            },
                            "strip",
                            z.ZodTypeAny,
                            { category: HarmCategory; threshold: HarmBlockThreshold },
                            { category: HarmCategory; threshold: HarmBlockThreshold },
                        >,
                        "many",
                    >,
                >;
                vertexRetrieval: z.ZodOptional<
                    z.ZodObject<
                        {
                            datastore: z.ZodObject<
                                {
                                    dataStoreId: z.ZodString;
                                    location: z.ZodOptional<z.ZodString>;
                                    projectId: z.ZodOptional<z.ZodString>;
                                },
                                "strip",
                                z.ZodTypeAny,
                                { dataStoreId: string; location?: string; projectId?: string },
                                { dataStoreId: string; location?: string; projectId?: string },
                            >;
                            disableAttribution: z.ZodOptional<z.ZodBoolean>;
                        },
                        "strip",
                        z.ZodTypeAny,
                        {
                            datastore: {
                                dataStoreId: string;
                                location?: string;
                                projectId?: string;
                            };
                            disableAttribution?: boolean;
                        },
                        {
                            datastore: {
                                dataStoreId: string;
                                location?: string;
                                projectId?: string;
                            };
                            disableAttribution?: boolean;
                        },
                    >,
                >;
            },
        >,
        "strip",
        z.ZodTypeAny,
        {
            functionCallingConfig?: {
                allowedFunctionNames?: string[];
                mode?: "MODE_UNSPECIFIED"
                | "AUTO"
                | "ANY"
                | "NONE";
            };
            googleSearchRetrieval?: { disableAttribution?: boolean };
            location?: string;
            maxOutputTokens?: number;
            safetySettings?: {
                category: HarmCategory;
                threshold: HarmBlockThreshold;
            }[];
            stopSequences?: string[];
            temperature?: number;
            topK?: number;
            topP?: number;
            version?: string;
            vertexRetrieval?: {
                datastore: {
                    dataStoreId: string;
                    location?: string;
                    projectId?: string;
                };
                disableAttribution?: boolean;
            };
        },
        {
            functionCallingConfig?: {
                allowedFunctionNames?: string[];
                mode?: "MODE_UNSPECIFIED"
                | "AUTO"
                | "ANY"
                | "NONE";
            };
            googleSearchRetrieval?: { disableAttribution?: boolean };
            location?: string;
            maxOutputTokens?: number;
            safetySettings?: {
                category: HarmCategory;
                threshold: HarmBlockThreshold;
            }[];
            stopSequences?: string[];
            temperature?: number;
            topK?: number;
            topP?: number;
            version?: string;
            vertexRetrieval?: {
                datastore: {
                    dataStoreId: string;
                    location?: string;
                    projectId?: string;
                };
                disableAttribution?: boolean;
            };
        },
    >,
> = ...