import type * as runtime from "@prisma/client/runtime/client";
import type * as Prisma from "../internal/prismaNamespace";
/**
 * Model chat
 * This model contains row level security and requires additional setup for migrations. Visit https://pris.ly/d/row-level-security for more info.
 */
export type chatModel = runtime.Types.Result.DefaultSelection<Prisma.$chatPayload>;
export type AggregateChat = {
    _count: ChatCountAggregateOutputType | null;
    _avg: ChatAvgAggregateOutputType | null;
    _sum: ChatSumAggregateOutputType | null;
    _min: ChatMinAggregateOutputType | null;
    _max: ChatMaxAggregateOutputType | null;
};
export type ChatAvgAggregateOutputType = {
    id: number | null;
    sort: number | null;
};
export type ChatSumAggregateOutputType = {
    id: number | null;
    sort: number | null;
};
export type ChatMinAggregateOutputType = {
    id: number | null;
    status: string | null;
    sort: number | null;
    user_created: string | null;
    date_created: Date | null;
    user_updated: string | null;
    date_updated: Date | null;
    name: string | null;
    description: string | null;
    image: string | null;
    message: string | null;
};
export type ChatMaxAggregateOutputType = {
    id: number | null;
    status: string | null;
    sort: number | null;
    user_created: string | null;
    date_created: Date | null;
    user_updated: string | null;
    date_updated: Date | null;
    name: string | null;
    description: string | null;
    image: string | null;
    message: string | null;
};
export type ChatCountAggregateOutputType = {
    id: number;
    status: number;
    sort: number;
    user_created: number;
    date_created: number;
    user_updated: number;
    date_updated: number;
    name: number;
    description: number;
    image: number;
    message: number;
    _all: number;
};
export type ChatAvgAggregateInputType = {
    id?: true;
    sort?: true;
};
export type ChatSumAggregateInputType = {
    id?: true;
    sort?: true;
};
export type ChatMinAggregateInputType = {
    id?: true;
    status?: true;
    sort?: true;
    user_created?: true;
    date_created?: true;
    user_updated?: true;
    date_updated?: true;
    name?: true;
    description?: true;
    image?: true;
    message?: true;
};
export type ChatMaxAggregateInputType = {
    id?: true;
    status?: true;
    sort?: true;
    user_created?: true;
    date_created?: true;
    user_updated?: true;
    date_updated?: true;
    name?: true;
    description?: true;
    image?: true;
    message?: true;
};
export type ChatCountAggregateInputType = {
    id?: true;
    status?: true;
    sort?: true;
    user_created?: true;
    date_created?: true;
    user_updated?: true;
    date_updated?: true;
    name?: true;
    description?: true;
    image?: true;
    message?: true;
    _all?: true;
};
export type ChatAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Filter which chat to aggregate.
     */
    where?: Prisma.chatWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of chats to fetch.
     */
    orderBy?: Prisma.chatOrderByWithRelationInput | Prisma.chatOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the start position
     */
    cursor?: Prisma.chatWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` chats from the position of the cursor.
     */
    take?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Skip the first `n` chats.
     */
    skip?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Count returned chats
    **/
    _count?: true | ChatCountAggregateInputType;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Select which fields to average
    **/
    _avg?: ChatAvgAggregateInputType;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Select which fields to sum
    **/
    _sum?: ChatSumAggregateInputType;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Select which fields to find the minimum value
    **/
    _min?: ChatMinAggregateInputType;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Select which fields to find the maximum value
    **/
    _max?: ChatMaxAggregateInputType;
};
export type GetChatAggregateType<T extends ChatAggregateArgs> = {
    [P in keyof T & keyof AggregateChat]: P extends '_count' | 'count' ? T[P] extends true ? number : Prisma.GetScalarType<T[P], AggregateChat[P]> : Prisma.GetScalarType<T[P], AggregateChat[P]>;
};
export type chatGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    where?: Prisma.chatWhereInput;
    orderBy?: Prisma.chatOrderByWithAggregationInput | Prisma.chatOrderByWithAggregationInput[];
    by: Prisma.ChatScalarFieldEnum[] | Prisma.ChatScalarFieldEnum;
    having?: Prisma.chatScalarWhereWithAggregatesInput;
    take?: number;
    skip?: number;
    _count?: ChatCountAggregateInputType | true;
    _avg?: ChatAvgAggregateInputType;
    _sum?: ChatSumAggregateInputType;
    _min?: ChatMinAggregateInputType;
    _max?: ChatMaxAggregateInputType;
};
export type ChatGroupByOutputType = {
    id: number;
    status: string;
    sort: number | null;
    user_created: string | null;
    date_created: Date | null;
    user_updated: string | null;
    date_updated: Date | null;
    name: string | null;
    description: string | null;
    image: string | null;
    message: string | null;
    _count: ChatCountAggregateOutputType | null;
    _avg: ChatAvgAggregateOutputType | null;
    _sum: ChatSumAggregateOutputType | null;
    _min: ChatMinAggregateOutputType | null;
    _max: ChatMaxAggregateOutputType | null;
};
type GetChatGroupByPayload<T extends chatGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<ChatGroupByOutputType, T['by']> & {
    [P in ((keyof T) & (keyof ChatGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], ChatGroupByOutputType[P]> : Prisma.GetScalarType<T[P], ChatGroupByOutputType[P]>;
}>>;
export type chatWhereInput = {
    AND?: Prisma.chatWhereInput | Prisma.chatWhereInput[];
    OR?: Prisma.chatWhereInput[];
    NOT?: Prisma.chatWhereInput | Prisma.chatWhereInput[];
    id?: Prisma.IntFilter<"chat"> | number;
    status?: Prisma.StringFilter<"chat"> | string;
    sort?: Prisma.IntNullableFilter<"chat"> | number | null;
    user_created?: Prisma.UuidNullableFilter<"chat"> | string | null;
    date_created?: Prisma.DateTimeNullableFilter<"chat"> | Date | string | null;
    user_updated?: Prisma.UuidNullableFilter<"chat"> | string | null;
    date_updated?: Prisma.DateTimeNullableFilter<"chat"> | Date | string | null;
    name?: Prisma.StringNullableFilter<"chat"> | string | null;
    description?: Prisma.StringNullableFilter<"chat"> | string | null;
    image?: Prisma.UuidNullableFilter<"chat"> | string | null;
    message?: Prisma.StringNullableFilter<"chat"> | string | null;
    directus_files?: Prisma.XOR<Prisma.Directus_filesNullableScalarRelationFilter, Prisma.directus_filesWhereInput> | null;
    directus_users_chat_user_createdTodirectus_users?: Prisma.XOR<Prisma.Directus_usersNullableScalarRelationFilter, Prisma.directus_usersWhereInput> | null;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.XOR<Prisma.Directus_usersNullableScalarRelationFilter, Prisma.directus_usersWhereInput> | null;
};
export type chatOrderByWithRelationInput = {
    id?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    sort?: Prisma.SortOrderInput | Prisma.SortOrder;
    user_created?: Prisma.SortOrderInput | Prisma.SortOrder;
    date_created?: Prisma.SortOrderInput | Prisma.SortOrder;
    user_updated?: Prisma.SortOrderInput | Prisma.SortOrder;
    date_updated?: Prisma.SortOrderInput | Prisma.SortOrder;
    name?: Prisma.SortOrderInput | Prisma.SortOrder;
    description?: Prisma.SortOrderInput | Prisma.SortOrder;
    image?: Prisma.SortOrderInput | Prisma.SortOrder;
    message?: Prisma.SortOrderInput | Prisma.SortOrder;
    directus_files?: Prisma.directus_filesOrderByWithRelationInput;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersOrderByWithRelationInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersOrderByWithRelationInput;
};
export type chatWhereUniqueInput = Prisma.AtLeast<{
    id?: number;
    AND?: Prisma.chatWhereInput | Prisma.chatWhereInput[];
    OR?: Prisma.chatWhereInput[];
    NOT?: Prisma.chatWhereInput | Prisma.chatWhereInput[];
    status?: Prisma.StringFilter<"chat"> | string;
    sort?: Prisma.IntNullableFilter<"chat"> | number | null;
    user_created?: Prisma.UuidNullableFilter<"chat"> | string | null;
    date_created?: Prisma.DateTimeNullableFilter<"chat"> | Date | string | null;
    user_updated?: Prisma.UuidNullableFilter<"chat"> | string | null;
    date_updated?: Prisma.DateTimeNullableFilter<"chat"> | Date | string | null;
    name?: Prisma.StringNullableFilter<"chat"> | string | null;
    description?: Prisma.StringNullableFilter<"chat"> | string | null;
    image?: Prisma.UuidNullableFilter<"chat"> | string | null;
    message?: Prisma.StringNullableFilter<"chat"> | string | null;
    directus_files?: Prisma.XOR<Prisma.Directus_filesNullableScalarRelationFilter, Prisma.directus_filesWhereInput> | null;
    directus_users_chat_user_createdTodirectus_users?: Prisma.XOR<Prisma.Directus_usersNullableScalarRelationFilter, Prisma.directus_usersWhereInput> | null;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.XOR<Prisma.Directus_usersNullableScalarRelationFilter, Prisma.directus_usersWhereInput> | null;
}, "id">;
export type chatOrderByWithAggregationInput = {
    id?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    sort?: Prisma.SortOrderInput | Prisma.SortOrder;
    user_created?: Prisma.SortOrderInput | Prisma.SortOrder;
    date_created?: Prisma.SortOrderInput | Prisma.SortOrder;
    user_updated?: Prisma.SortOrderInput | Prisma.SortOrder;
    date_updated?: Prisma.SortOrderInput | Prisma.SortOrder;
    name?: Prisma.SortOrderInput | Prisma.SortOrder;
    description?: Prisma.SortOrderInput | Prisma.SortOrder;
    image?: Prisma.SortOrderInput | Prisma.SortOrder;
    message?: Prisma.SortOrderInput | Prisma.SortOrder;
    _count?: Prisma.chatCountOrderByAggregateInput;
    _avg?: Prisma.chatAvgOrderByAggregateInput;
    _max?: Prisma.chatMaxOrderByAggregateInput;
    _min?: Prisma.chatMinOrderByAggregateInput;
    _sum?: Prisma.chatSumOrderByAggregateInput;
};
export type chatScalarWhereWithAggregatesInput = {
    AND?: Prisma.chatScalarWhereWithAggregatesInput | Prisma.chatScalarWhereWithAggregatesInput[];
    OR?: Prisma.chatScalarWhereWithAggregatesInput[];
    NOT?: Prisma.chatScalarWhereWithAggregatesInput | Prisma.chatScalarWhereWithAggregatesInput[];
    id?: Prisma.IntWithAggregatesFilter<"chat"> | number;
    status?: Prisma.StringWithAggregatesFilter<"chat"> | string;
    sort?: Prisma.IntNullableWithAggregatesFilter<"chat"> | number | null;
    user_created?: Prisma.UuidNullableWithAggregatesFilter<"chat"> | string | null;
    date_created?: Prisma.DateTimeNullableWithAggregatesFilter<"chat"> | Date | string | null;
    user_updated?: Prisma.UuidNullableWithAggregatesFilter<"chat"> | string | null;
    date_updated?: Prisma.DateTimeNullableWithAggregatesFilter<"chat"> | Date | string | null;
    name?: Prisma.StringNullableWithAggregatesFilter<"chat"> | string | null;
    description?: Prisma.StringNullableWithAggregatesFilter<"chat"> | string | null;
    image?: Prisma.UuidNullableWithAggregatesFilter<"chat"> | string | null;
    message?: Prisma.StringNullableWithAggregatesFilter<"chat"> | string | null;
};
export type chatCreateInput = {
    status?: string;
    sort?: number | null;
    date_created?: Date | string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    message?: string | null;
    directus_files?: Prisma.directus_filesCreateNestedOneWithoutChatInput;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersCreateNestedOneWithoutChat_chat_user_createdTodirectus_usersInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersCreateNestedOneWithoutChat_chat_user_updatedTodirectus_usersInput;
};
export type chatUncheckedCreateInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    user_created?: string | null;
    date_created?: Date | string | null;
    user_updated?: string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    image?: string | null;
    message?: string | null;
};
export type chatUpdateInput = {
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    directus_files?: Prisma.directus_filesUpdateOneWithoutChatNestedInput;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersUpdateOneWithoutChat_chat_user_createdTodirectus_usersNestedInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersUpdateOneWithoutChat_chat_user_updatedTodirectus_usersNestedInput;
};
export type chatUncheckedUpdateInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    user_created?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    user_updated?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    image?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatCreateManyInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    user_created?: string | null;
    date_created?: Date | string | null;
    user_updated?: string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    image?: string | null;
    message?: string | null;
};
export type chatUpdateManyMutationInput = {
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatUncheckedUpdateManyInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    user_created?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    user_updated?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    image?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatCountOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    sort?: Prisma.SortOrder;
    user_created?: Prisma.SortOrder;
    date_created?: Prisma.SortOrder;
    user_updated?: Prisma.SortOrder;
    date_updated?: Prisma.SortOrder;
    name?: Prisma.SortOrder;
    description?: Prisma.SortOrder;
    image?: Prisma.SortOrder;
    message?: Prisma.SortOrder;
};
export type chatAvgOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    sort?: Prisma.SortOrder;
};
export type chatMaxOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    sort?: Prisma.SortOrder;
    user_created?: Prisma.SortOrder;
    date_created?: Prisma.SortOrder;
    user_updated?: Prisma.SortOrder;
    date_updated?: Prisma.SortOrder;
    name?: Prisma.SortOrder;
    description?: Prisma.SortOrder;
    image?: Prisma.SortOrder;
    message?: Prisma.SortOrder;
};
export type chatMinOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    sort?: Prisma.SortOrder;
    user_created?: Prisma.SortOrder;
    date_created?: Prisma.SortOrder;
    user_updated?: Prisma.SortOrder;
    date_updated?: Prisma.SortOrder;
    name?: Prisma.SortOrder;
    description?: Prisma.SortOrder;
    image?: Prisma.SortOrder;
    message?: Prisma.SortOrder;
};
export type chatSumOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    sort?: Prisma.SortOrder;
};
export type ChatListRelationFilter = {
    every?: Prisma.chatWhereInput;
    some?: Prisma.chatWhereInput;
    none?: Prisma.chatWhereInput;
};
export type chatOrderByRelationAggregateInput = {
    _count?: Prisma.SortOrder;
};
export type chatCreateNestedManyWithoutDirectus_filesInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_filesInput, Prisma.chatUncheckedCreateWithoutDirectus_filesInput> | Prisma.chatCreateWithoutDirectus_filesInput[] | Prisma.chatUncheckedCreateWithoutDirectus_filesInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_filesInput | Prisma.chatCreateOrConnectWithoutDirectus_filesInput[];
    createMany?: Prisma.chatCreateManyDirectus_filesInputEnvelope;
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
};
export type chatUncheckedCreateNestedManyWithoutDirectus_filesInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_filesInput, Prisma.chatUncheckedCreateWithoutDirectus_filesInput> | Prisma.chatCreateWithoutDirectus_filesInput[] | Prisma.chatUncheckedCreateWithoutDirectus_filesInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_filesInput | Prisma.chatCreateOrConnectWithoutDirectus_filesInput[];
    createMany?: Prisma.chatCreateManyDirectus_filesInputEnvelope;
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
};
export type chatUpdateManyWithoutDirectus_filesNestedInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_filesInput, Prisma.chatUncheckedCreateWithoutDirectus_filesInput> | Prisma.chatCreateWithoutDirectus_filesInput[] | Prisma.chatUncheckedCreateWithoutDirectus_filesInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_filesInput | Prisma.chatCreateOrConnectWithoutDirectus_filesInput[];
    upsert?: Prisma.chatUpsertWithWhereUniqueWithoutDirectus_filesInput | Prisma.chatUpsertWithWhereUniqueWithoutDirectus_filesInput[];
    createMany?: Prisma.chatCreateManyDirectus_filesInputEnvelope;
    set?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    disconnect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    delete?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    update?: Prisma.chatUpdateWithWhereUniqueWithoutDirectus_filesInput | Prisma.chatUpdateWithWhereUniqueWithoutDirectus_filesInput[];
    updateMany?: Prisma.chatUpdateManyWithWhereWithoutDirectus_filesInput | Prisma.chatUpdateManyWithWhereWithoutDirectus_filesInput[];
    deleteMany?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
};
export type chatUncheckedUpdateManyWithoutDirectus_filesNestedInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_filesInput, Prisma.chatUncheckedCreateWithoutDirectus_filesInput> | Prisma.chatCreateWithoutDirectus_filesInput[] | Prisma.chatUncheckedCreateWithoutDirectus_filesInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_filesInput | Prisma.chatCreateOrConnectWithoutDirectus_filesInput[];
    upsert?: Prisma.chatUpsertWithWhereUniqueWithoutDirectus_filesInput | Prisma.chatUpsertWithWhereUniqueWithoutDirectus_filesInput[];
    createMany?: Prisma.chatCreateManyDirectus_filesInputEnvelope;
    set?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    disconnect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    delete?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    update?: Prisma.chatUpdateWithWhereUniqueWithoutDirectus_filesInput | Prisma.chatUpdateWithWhereUniqueWithoutDirectus_filesInput[];
    updateMany?: Prisma.chatUpdateManyWithWhereWithoutDirectus_filesInput | Prisma.chatUpdateManyWithWhereWithoutDirectus_filesInput[];
    deleteMany?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
};
export type chatCreateNestedManyWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInputEnvelope;
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
};
export type chatCreateNestedManyWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInputEnvelope;
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
};
export type chatUncheckedCreateNestedManyWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInputEnvelope;
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
};
export type chatUncheckedCreateNestedManyWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInputEnvelope;
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
};
export type chatUpdateManyWithoutDirectus_users_chat_user_createdTodirectus_usersNestedInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    upsert?: Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInputEnvelope;
    set?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    disconnect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    delete?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    update?: Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    updateMany?: Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    deleteMany?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
};
export type chatUpdateManyWithoutDirectus_users_chat_user_updatedTodirectus_usersNestedInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    upsert?: Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInputEnvelope;
    set?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    disconnect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    delete?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    update?: Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    updateMany?: Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    deleteMany?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
};
export type chatUncheckedUpdateManyWithoutDirectus_users_chat_user_createdTodirectus_usersNestedInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    upsert?: Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInputEnvelope;
    set?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    disconnect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    delete?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    update?: Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    updateMany?: Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_createdTodirectus_usersInput[];
    deleteMany?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
};
export type chatUncheckedUpdateManyWithoutDirectus_users_chat_user_updatedTodirectus_usersNestedInput = {
    create?: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput> | Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[] | Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    connectOrCreate?: Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    upsert?: Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    createMany?: Prisma.chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInputEnvelope;
    set?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    disconnect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    delete?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    connect?: Prisma.chatWhereUniqueInput | Prisma.chatWhereUniqueInput[];
    update?: Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    updateMany?: Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatUpdateManyWithWhereWithoutDirectus_users_chat_user_updatedTodirectus_usersInput[];
    deleteMany?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
};
export type chatCreateWithoutDirectus_filesInput = {
    status?: string;
    sort?: number | null;
    date_created?: Date | string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    message?: string | null;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersCreateNestedOneWithoutChat_chat_user_createdTodirectus_usersInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersCreateNestedOneWithoutChat_chat_user_updatedTodirectus_usersInput;
};
export type chatUncheckedCreateWithoutDirectus_filesInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    user_created?: string | null;
    date_created?: Date | string | null;
    user_updated?: string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    message?: string | null;
};
export type chatCreateOrConnectWithoutDirectus_filesInput = {
    where: Prisma.chatWhereUniqueInput;
    create: Prisma.XOR<Prisma.chatCreateWithoutDirectus_filesInput, Prisma.chatUncheckedCreateWithoutDirectus_filesInput>;
};
export type chatCreateManyDirectus_filesInputEnvelope = {
    data: Prisma.chatCreateManyDirectus_filesInput | Prisma.chatCreateManyDirectus_filesInput[];
    skipDuplicates?: boolean;
};
export type chatUpsertWithWhereUniqueWithoutDirectus_filesInput = {
    where: Prisma.chatWhereUniqueInput;
    update: Prisma.XOR<Prisma.chatUpdateWithoutDirectus_filesInput, Prisma.chatUncheckedUpdateWithoutDirectus_filesInput>;
    create: Prisma.XOR<Prisma.chatCreateWithoutDirectus_filesInput, Prisma.chatUncheckedCreateWithoutDirectus_filesInput>;
};
export type chatUpdateWithWhereUniqueWithoutDirectus_filesInput = {
    where: Prisma.chatWhereUniqueInput;
    data: Prisma.XOR<Prisma.chatUpdateWithoutDirectus_filesInput, Prisma.chatUncheckedUpdateWithoutDirectus_filesInput>;
};
export type chatUpdateManyWithWhereWithoutDirectus_filesInput = {
    where: Prisma.chatScalarWhereInput;
    data: Prisma.XOR<Prisma.chatUpdateManyMutationInput, Prisma.chatUncheckedUpdateManyWithoutDirectus_filesInput>;
};
export type chatScalarWhereInput = {
    AND?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
    OR?: Prisma.chatScalarWhereInput[];
    NOT?: Prisma.chatScalarWhereInput | Prisma.chatScalarWhereInput[];
    id?: Prisma.IntFilter<"chat"> | number;
    status?: Prisma.StringFilter<"chat"> | string;
    sort?: Prisma.IntNullableFilter<"chat"> | number | null;
    user_created?: Prisma.UuidNullableFilter<"chat"> | string | null;
    date_created?: Prisma.DateTimeNullableFilter<"chat"> | Date | string | null;
    user_updated?: Prisma.UuidNullableFilter<"chat"> | string | null;
    date_updated?: Prisma.DateTimeNullableFilter<"chat"> | Date | string | null;
    name?: Prisma.StringNullableFilter<"chat"> | string | null;
    description?: Prisma.StringNullableFilter<"chat"> | string | null;
    image?: Prisma.UuidNullableFilter<"chat"> | string | null;
    message?: Prisma.StringNullableFilter<"chat"> | string | null;
};
export type chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    status?: string;
    sort?: number | null;
    date_created?: Date | string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    message?: string | null;
    directus_files?: Prisma.directus_filesCreateNestedOneWithoutChatInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersCreateNestedOneWithoutChat_chat_user_updatedTodirectus_usersInput;
};
export type chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    date_created?: Date | string | null;
    user_updated?: string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    image?: string | null;
    message?: string | null;
};
export type chatCreateOrConnectWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    where: Prisma.chatWhereUniqueInput;
    create: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput>;
};
export type chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInputEnvelope = {
    data: Prisma.chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInput | Prisma.chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInput[];
    skipDuplicates?: boolean;
};
export type chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    status?: string;
    sort?: number | null;
    date_created?: Date | string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    message?: string | null;
    directus_files?: Prisma.directus_filesCreateNestedOneWithoutChatInput;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersCreateNestedOneWithoutChat_chat_user_createdTodirectus_usersInput;
};
export type chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    user_created?: string | null;
    date_created?: Date | string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    image?: string | null;
    message?: string | null;
};
export type chatCreateOrConnectWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    where: Prisma.chatWhereUniqueInput;
    create: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput>;
};
export type chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInputEnvelope = {
    data: Prisma.chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInput | Prisma.chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInput[];
    skipDuplicates?: boolean;
};
export type chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    where: Prisma.chatWhereUniqueInput;
    update: Prisma.XOR<Prisma.chatUpdateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedUpdateWithoutDirectus_users_chat_user_createdTodirectus_usersInput>;
    create: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_createdTodirectus_usersInput>;
};
export type chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    where: Prisma.chatWhereUniqueInput;
    data: Prisma.XOR<Prisma.chatUpdateWithoutDirectus_users_chat_user_createdTodirectus_usersInput, Prisma.chatUncheckedUpdateWithoutDirectus_users_chat_user_createdTodirectus_usersInput>;
};
export type chatUpdateManyWithWhereWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    where: Prisma.chatScalarWhereInput;
    data: Prisma.XOR<Prisma.chatUpdateManyMutationInput, Prisma.chatUncheckedUpdateManyWithoutDirectus_users_chat_user_createdTodirectus_usersInput>;
};
export type chatUpsertWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    where: Prisma.chatWhereUniqueInput;
    update: Prisma.XOR<Prisma.chatUpdateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedUpdateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput>;
    create: Prisma.XOR<Prisma.chatCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedCreateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput>;
};
export type chatUpdateWithWhereUniqueWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    where: Prisma.chatWhereUniqueInput;
    data: Prisma.XOR<Prisma.chatUpdateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput, Prisma.chatUncheckedUpdateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput>;
};
export type chatUpdateManyWithWhereWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    where: Prisma.chatScalarWhereInput;
    data: Prisma.XOR<Prisma.chatUpdateManyMutationInput, Prisma.chatUncheckedUpdateManyWithoutDirectus_users_chat_user_updatedTodirectus_usersInput>;
};
export type chatCreateManyDirectus_filesInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    user_created?: string | null;
    date_created?: Date | string | null;
    user_updated?: string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    message?: string | null;
};
export type chatUpdateWithoutDirectus_filesInput = {
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersUpdateOneWithoutChat_chat_user_createdTodirectus_usersNestedInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersUpdateOneWithoutChat_chat_user_updatedTodirectus_usersNestedInput;
};
export type chatUncheckedUpdateWithoutDirectus_filesInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    user_created?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    user_updated?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatUncheckedUpdateManyWithoutDirectus_filesInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    user_created?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    user_updated?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatCreateManyDirectus_users_chat_user_createdTodirectus_usersInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    date_created?: Date | string | null;
    user_updated?: string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    image?: string | null;
    message?: string | null;
};
export type chatCreateManyDirectus_users_chat_user_updatedTodirectus_usersInput = {
    id?: number;
    status?: string;
    sort?: number | null;
    user_created?: string | null;
    date_created?: Date | string | null;
    date_updated?: Date | string | null;
    name?: string | null;
    description?: string | null;
    image?: string | null;
    message?: string | null;
};
export type chatUpdateWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    directus_files?: Prisma.directus_filesUpdateOneWithoutChatNestedInput;
    directus_users_chat_user_updatedTodirectus_users?: Prisma.directus_usersUpdateOneWithoutChat_chat_user_updatedTodirectus_usersNestedInput;
};
export type chatUncheckedUpdateWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    user_updated?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    image?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatUncheckedUpdateManyWithoutDirectus_users_chat_user_createdTodirectus_usersInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    user_updated?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    image?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatUpdateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    directus_files?: Prisma.directus_filesUpdateOneWithoutChatNestedInput;
    directus_users_chat_user_createdTodirectus_users?: Prisma.directus_usersUpdateOneWithoutChat_chat_user_createdTodirectus_usersNestedInput;
};
export type chatUncheckedUpdateWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    user_created?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    image?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatUncheckedUpdateManyWithoutDirectus_users_chat_user_updatedTodirectus_usersInput = {
    id?: Prisma.IntFieldUpdateOperationsInput | number;
    status?: Prisma.StringFieldUpdateOperationsInput | string;
    sort?: Prisma.NullableIntFieldUpdateOperationsInput | number | null;
    user_created?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    date_created?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    date_updated?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    description?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    image?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type chatSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
    id?: boolean;
    status?: boolean;
    sort?: boolean;
    user_created?: boolean;
    date_created?: boolean;
    user_updated?: boolean;
    date_updated?: boolean;
    name?: boolean;
    description?: boolean;
    image?: boolean;
    message?: boolean;
    directus_files?: boolean | Prisma.chat$directus_filesArgs<ExtArgs>;
    directus_users_chat_user_createdTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>;
    directus_users_chat_user_updatedTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>;
}, ExtArgs["result"]["chat"]>;
export type chatSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
    id?: boolean;
    status?: boolean;
    sort?: boolean;
    user_created?: boolean;
    date_created?: boolean;
    user_updated?: boolean;
    date_updated?: boolean;
    name?: boolean;
    description?: boolean;
    image?: boolean;
    message?: boolean;
    directus_files?: boolean | Prisma.chat$directus_filesArgs<ExtArgs>;
    directus_users_chat_user_createdTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>;
    directus_users_chat_user_updatedTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>;
}, ExtArgs["result"]["chat"]>;
export type chatSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
    id?: boolean;
    status?: boolean;
    sort?: boolean;
    user_created?: boolean;
    date_created?: boolean;
    user_updated?: boolean;
    date_updated?: boolean;
    name?: boolean;
    description?: boolean;
    image?: boolean;
    message?: boolean;
    directus_files?: boolean | Prisma.chat$directus_filesArgs<ExtArgs>;
    directus_users_chat_user_createdTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>;
    directus_users_chat_user_updatedTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>;
}, ExtArgs["result"]["chat"]>;
export type chatSelectScalar = {
    id?: boolean;
    status?: boolean;
    sort?: boolean;
    user_created?: boolean;
    date_created?: boolean;
    user_updated?: boolean;
    date_updated?: boolean;
    name?: boolean;
    description?: boolean;
    image?: boolean;
    message?: boolean;
};
export type chatOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "status" | "sort" | "user_created" | "date_created" | "user_updated" | "date_updated" | "name" | "description" | "image" | "message", ExtArgs["result"]["chat"]>;
export type chatInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    directus_files?: boolean | Prisma.chat$directus_filesArgs<ExtArgs>;
    directus_users_chat_user_createdTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>;
    directus_users_chat_user_updatedTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>;
};
export type chatIncludeCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    directus_files?: boolean | Prisma.chat$directus_filesArgs<ExtArgs>;
    directus_users_chat_user_createdTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>;
    directus_users_chat_user_updatedTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>;
};
export type chatIncludeUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    directus_files?: boolean | Prisma.chat$directus_filesArgs<ExtArgs>;
    directus_users_chat_user_createdTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>;
    directus_users_chat_user_updatedTodirectus_users?: boolean | Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>;
};
export type $chatPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    name: "chat";
    objects: {
        directus_files: Prisma.$directus_filesPayload<ExtArgs> | null;
        directus_users_chat_user_createdTodirectus_users: Prisma.$directus_usersPayload<ExtArgs> | null;
        directus_users_chat_user_updatedTodirectus_users: Prisma.$directus_usersPayload<ExtArgs> | null;
    };
    scalars: runtime.Types.Extensions.GetPayloadResult<{
        id: number;
        status: string;
        sort: number | null;
        user_created: string | null;
        date_created: Date | null;
        user_updated: string | null;
        date_updated: Date | null;
        name: string | null;
        description: string | null;
        image: string | null;
        message: string | null;
    }, ExtArgs["result"]["chat"]>;
    composites: {};
};
export type chatGetPayload<S extends boolean | null | undefined | chatDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$chatPayload, S>;
export type chatCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = Omit<chatFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
    select?: ChatCountAggregateInputType | true;
};
export interface chatDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
    [K: symbol]: {
        types: Prisma.TypeMap<ExtArgs>['model']['chat'];
        meta: {
            name: 'chat';
        };
    };
    /**
     * Find zero or one Chat that matches the filter.
     * @param {chatFindUniqueArgs} args - Arguments to find a Chat
     * @example
     * // Get one Chat
     * const chat = await prisma.chat.findUnique({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findUnique<T extends chatFindUniqueArgs>(args: Prisma.SelectSubset<T, chatFindUniqueArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    /**
     * Find one Chat that matches the filter or throw an error with `error.code='P2025'`
     * if no matches were found.
     * @param {chatFindUniqueOrThrowArgs} args - Arguments to find a Chat
     * @example
     * // Get one Chat
     * const chat = await prisma.chat.findUniqueOrThrow({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findUniqueOrThrow<T extends chatFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, chatFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Find the first Chat that matches the filter.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {chatFindFirstArgs} args - Arguments to find a Chat
     * @example
     * // Get one Chat
     * const chat = await prisma.chat.findFirst({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findFirst<T extends chatFindFirstArgs>(args?: Prisma.SelectSubset<T, chatFindFirstArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    /**
     * Find the first Chat that matches the filter or
     * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {chatFindFirstOrThrowArgs} args - Arguments to find a Chat
     * @example
     * // Get one Chat
     * const chat = await prisma.chat.findFirstOrThrow({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findFirstOrThrow<T extends chatFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, chatFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Find zero or more Chats that matches the filter.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {chatFindManyArgs} args - Arguments to filter and select certain fields only.
     * @example
     * // Get all Chats
     * const chats = await prisma.chat.findMany()
     *
     * // Get first 10 Chats
     * const chats = await prisma.chat.findMany({ take: 10 })
     *
     * // Only select the `id`
     * const chatWithIdOnly = await prisma.chat.findMany({ select: { id: true } })
     *
     */
    findMany<T extends chatFindManyArgs>(args?: Prisma.SelectSubset<T, chatFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>;
    /**
     * Create a Chat.
     * @param {chatCreateArgs} args - Arguments to create a Chat.
     * @example
     * // Create one Chat
     * const Chat = await prisma.chat.create({
     *   data: {
     *     // ... data to create a Chat
     *   }
     * })
     *
     */
    create<T extends chatCreateArgs>(args: Prisma.SelectSubset<T, chatCreateArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Create many Chats.
     * @param {chatCreateManyArgs} args - Arguments to create many Chats.
     * @example
     * // Create many Chats
     * const chat = await prisma.chat.createMany({
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     *
     */
    createMany<T extends chatCreateManyArgs>(args?: Prisma.SelectSubset<T, chatCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>;
    /**
     * Create many Chats and returns the data saved in the database.
     * @param {chatCreateManyAndReturnArgs} args - Arguments to create many Chats.
     * @example
     * // Create many Chats
     * const chat = await prisma.chat.createManyAndReturn({
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     *
     * // Create many Chats and only return the `id`
     * const chatWithIdOnly = await prisma.chat.createManyAndReturn({
     *   select: { id: true },
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     *
     */
    createManyAndReturn<T extends chatCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, chatCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>;
    /**
     * Delete a Chat.
     * @param {chatDeleteArgs} args - Arguments to delete one Chat.
     * @example
     * // Delete one Chat
     * const Chat = await prisma.chat.delete({
     *   where: {
     *     // ... filter to delete one Chat
     *   }
     * })
     *
     */
    delete<T extends chatDeleteArgs>(args: Prisma.SelectSubset<T, chatDeleteArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Update one Chat.
     * @param {chatUpdateArgs} args - Arguments to update one Chat.
     * @example
     * // Update one Chat
     * const chat = await prisma.chat.update({
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: {
     *     // ... provide data here
     *   }
     * })
     *
     */
    update<T extends chatUpdateArgs>(args: Prisma.SelectSubset<T, chatUpdateArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Delete zero or more Chats.
     * @param {chatDeleteManyArgs} args - Arguments to filter Chats to delete.
     * @example
     * // Delete a few Chats
     * const { count } = await prisma.chat.deleteMany({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     *
     */
    deleteMany<T extends chatDeleteManyArgs>(args?: Prisma.SelectSubset<T, chatDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>;
    /**
     * Update zero or more Chats.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {chatUpdateManyArgs} args - Arguments to update one or more rows.
     * @example
     * // Update many Chats
     * const chat = await prisma.chat.updateMany({
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: {
     *     // ... provide data here
     *   }
     * })
     *
     */
    updateMany<T extends chatUpdateManyArgs>(args: Prisma.SelectSubset<T, chatUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>;
    /**
     * Update zero or more Chats and returns the data updated in the database.
     * @param {chatUpdateManyAndReturnArgs} args - Arguments to update many Chats.
     * @example
     * // Update many Chats
     * const chat = await prisma.chat.updateManyAndReturn({
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     *
     * // Update zero or more Chats and only return the `id`
     * const chatWithIdOnly = await prisma.chat.updateManyAndReturn({
     *   select: { id: true },
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     *
     */
    updateManyAndReturn<T extends chatUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, chatUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>;
    /**
     * Create or update one Chat.
     * @param {chatUpsertArgs} args - Arguments to update or create a Chat.
     * @example
     * // Update or create a Chat
     * const chat = await prisma.chat.upsert({
     *   create: {
     *     // ... data to create a Chat
     *   },
     *   update: {
     *     // ... in case it already exists, update
     *   },
     *   where: {
     *     // ... the filter for the Chat we want to update
     *   }
     * })
     */
    upsert<T extends chatUpsertArgs>(args: Prisma.SelectSubset<T, chatUpsertArgs<ExtArgs>>): Prisma.Prisma__chatClient<runtime.Types.Result.GetResult<Prisma.$chatPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Count the number of Chats.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {chatCountArgs} args - Arguments to filter Chats to count.
     * @example
     * // Count the number of Chats
     * const count = await prisma.chat.count({
     *   where: {
     *     // ... the filter for the Chats we want to count
     *   }
     * })
    **/
    count<T extends chatCountArgs>(args?: Prisma.Subset<T, chatCountArgs>): Prisma.PrismaPromise<T extends runtime.Types.Utils.Record<'select', any> ? T['select'] extends true ? number : Prisma.GetScalarType<T['select'], ChatCountAggregateOutputType> : number>;
    /**
     * Allows you to perform aggregations operations on a Chat.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {ChatAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
     * @example
     * // Ordered by age ascending
     * // Where email contains prisma.io
     * // Limited to the 10 users
     * const aggregations = await prisma.user.aggregate({
     *   _avg: {
     *     age: true,
     *   },
     *   where: {
     *     email: {
     *       contains: "prisma.io",
     *     },
     *   },
     *   orderBy: {
     *     age: "asc",
     *   },
     *   take: 10,
     * })
    **/
    aggregate<T extends ChatAggregateArgs>(args: Prisma.Subset<T, ChatAggregateArgs>): Prisma.PrismaPromise<GetChatAggregateType<T>>;
    /**
     * Group by Chat.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {chatGroupByArgs} args - Group by arguments.
     * @example
     * // Group by city, order by createdAt, get count
     * const result = await prisma.user.groupBy({
     *   by: ['city', 'createdAt'],
     *   orderBy: {
     *     createdAt: true
     *   },
     *   _count: {
     *     _all: true
     *   },
     * })
     *
    **/
    groupBy<T extends chatGroupByArgs, HasSelectOrTake extends Prisma.Or<Prisma.Extends<'skip', Prisma.Keys<T>>, Prisma.Extends<'take', Prisma.Keys<T>>>, OrderByArg extends Prisma.True extends HasSelectOrTake ? {
        orderBy: chatGroupByArgs['orderBy'];
    } : {
        orderBy?: chatGroupByArgs['orderBy'];
    }, OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>, ByFields extends Prisma.MaybeTupleToUnion<T['by']>, ByValid extends Prisma.Has<ByFields, OrderFields>, HavingFields extends Prisma.GetHavingFields<T['having']>, HavingValid extends Prisma.Has<ByFields, HavingFields>, ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False, InputErrors extends ByEmpty extends Prisma.True ? `Error: "by" must not be empty.` : HavingValid extends Prisma.False ? {
        [P in HavingFields]: P extends ByFields ? never : P extends string ? `Error: Field "${P}" used in "having" needs to be provided in "by".` : [
            Error,
            'Field ',
            P,
            ` in "having" needs to be provided in "by"`
        ];
    }[HavingFields] : 'take' extends Prisma.Keys<T> ? 'orderBy' extends Prisma.Keys<T> ? ByValid extends Prisma.True ? {} : {
        [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`;
    }[OrderFields] : 'Error: If you provide "take", you also need to provide "orderBy"' : 'skip' extends Prisma.Keys<T> ? 'orderBy' extends Prisma.Keys<T> ? ByValid extends Prisma.True ? {} : {
        [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`;
    }[OrderFields] : 'Error: If you provide "skip", you also need to provide "orderBy"' : ByValid extends Prisma.True ? {} : {
        [P in OrderFields]: P extends ByFields ? never : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`;
    }[OrderFields]>(args: Prisma.SubsetIntersection<T, chatGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetChatGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>;
    /**
     * Fields of the chat model
     */
    readonly fields: chatFieldRefs;
}
/**
 * The delegate class that acts as a "Promise-like" for chat.
 * Why is this prefixed with `Prisma__`?
 * Because we want to prevent naming conflicts as mentioned in
 * https://github.com/prisma/prisma-client-js/issues/707
 */
export interface Prisma__chatClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
    readonly [Symbol.toStringTag]: "PrismaPromise";
    directus_files<T extends Prisma.chat$directus_filesArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.chat$directus_filesArgs<ExtArgs>>): Prisma.Prisma__directus_filesClient<runtime.Types.Result.GetResult<Prisma.$directus_filesPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    directus_users_chat_user_createdTodirectus_users<T extends Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs>>): Prisma.Prisma__directus_usersClient<runtime.Types.Result.GetResult<Prisma.$directus_usersPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    directus_users_chat_user_updatedTodirectus_users<T extends Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs>>): Prisma.Prisma__directus_usersClient<runtime.Types.Result.GetResult<Prisma.$directus_usersPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    /**
     * Attaches callbacks for the resolution and/or rejection of the Promise.
     * @param onfulfilled The callback to execute when the Promise is resolved.
     * @param onrejected The callback to execute when the Promise is rejected.
     * @returns A Promise for the completion of which ever callback is executed.
     */
    then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): runtime.Types.Utils.JsPromise<TResult1 | TResult2>;
    /**
     * Attaches a callback for only the rejection of the Promise.
     * @param onrejected The callback to execute when the Promise is rejected.
     * @returns A Promise for the completion of the callback.
     */
    catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>;
    /**
     * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
     * resolved value cannot be modified from the callback.
     * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
     * @returns A Promise for the completion of the callback.
     */
    finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>;
}
/**
 * Fields of the chat model
 */
export interface chatFieldRefs {
    readonly id: Prisma.FieldRef<"chat", 'Int'>;
    readonly status: Prisma.FieldRef<"chat", 'String'>;
    readonly sort: Prisma.FieldRef<"chat", 'Int'>;
    readonly user_created: Prisma.FieldRef<"chat", 'String'>;
    readonly date_created: Prisma.FieldRef<"chat", 'DateTime'>;
    readonly user_updated: Prisma.FieldRef<"chat", 'String'>;
    readonly date_updated: Prisma.FieldRef<"chat", 'DateTime'>;
    readonly name: Prisma.FieldRef<"chat", 'String'>;
    readonly description: Prisma.FieldRef<"chat", 'String'>;
    readonly image: Prisma.FieldRef<"chat", 'String'>;
    readonly message: Prisma.FieldRef<"chat", 'String'>;
}
/**
 * chat findUnique
 */
export type chatFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * Filter, which chat to fetch.
     */
    where: Prisma.chatWhereUniqueInput;
};
/**
 * chat findUniqueOrThrow
 */
export type chatFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * Filter, which chat to fetch.
     */
    where: Prisma.chatWhereUniqueInput;
};
/**
 * chat findFirst
 */
export type chatFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * Filter, which chat to fetch.
     */
    where?: Prisma.chatWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of chats to fetch.
     */
    orderBy?: Prisma.chatOrderByWithRelationInput | Prisma.chatOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the position for searching for chats.
     */
    cursor?: Prisma.chatWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` chats from the position of the cursor.
     */
    take?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Skip the first `n` chats.
     */
    skip?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
     *
     * Filter by unique combinations of chats.
     */
    distinct?: Prisma.ChatScalarFieldEnum | Prisma.ChatScalarFieldEnum[];
};
/**
 * chat findFirstOrThrow
 */
export type chatFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * Filter, which chat to fetch.
     */
    where?: Prisma.chatWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of chats to fetch.
     */
    orderBy?: Prisma.chatOrderByWithRelationInput | Prisma.chatOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the position for searching for chats.
     */
    cursor?: Prisma.chatWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` chats from the position of the cursor.
     */
    take?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Skip the first `n` chats.
     */
    skip?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
     *
     * Filter by unique combinations of chats.
     */
    distinct?: Prisma.ChatScalarFieldEnum | Prisma.ChatScalarFieldEnum[];
};
/**
 * chat findMany
 */
export type chatFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * Filter, which chats to fetch.
     */
    where?: Prisma.chatWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of chats to fetch.
     */
    orderBy?: Prisma.chatOrderByWithRelationInput | Prisma.chatOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the position for listing chats.
     */
    cursor?: Prisma.chatWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` chats from the position of the cursor.
     */
    take?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Skip the first `n` chats.
     */
    skip?: number;
    distinct?: Prisma.ChatScalarFieldEnum | Prisma.ChatScalarFieldEnum[];
};
/**
 * chat create
 */
export type chatCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * The data needed to create a chat.
     */
    data?: Prisma.XOR<Prisma.chatCreateInput, Prisma.chatUncheckedCreateInput>;
};
/**
 * chat createMany
 */
export type chatCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * The data used to create many chats.
     */
    data: Prisma.chatCreateManyInput | Prisma.chatCreateManyInput[];
    skipDuplicates?: boolean;
};
/**
 * chat createManyAndReturn
 */
export type chatCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelectCreateManyAndReturn<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * The data used to create many chats.
     */
    data: Prisma.chatCreateManyInput | Prisma.chatCreateManyInput[];
    skipDuplicates?: boolean;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatIncludeCreateManyAndReturn<ExtArgs> | null;
};
/**
 * chat update
 */
export type chatUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * The data needed to update a chat.
     */
    data: Prisma.XOR<Prisma.chatUpdateInput, Prisma.chatUncheckedUpdateInput>;
    /**
     * Choose, which chat to update.
     */
    where: Prisma.chatWhereUniqueInput;
};
/**
 * chat updateMany
 */
export type chatUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * The data used to update chats.
     */
    data: Prisma.XOR<Prisma.chatUpdateManyMutationInput, Prisma.chatUncheckedUpdateManyInput>;
    /**
     * Filter which chats to update
     */
    where?: Prisma.chatWhereInput;
    /**
     * Limit how many chats to update.
     */
    limit?: number;
};
/**
 * chat updateManyAndReturn
 */
export type chatUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelectUpdateManyAndReturn<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * The data used to update chats.
     */
    data: Prisma.XOR<Prisma.chatUpdateManyMutationInput, Prisma.chatUncheckedUpdateManyInput>;
    /**
     * Filter which chats to update
     */
    where?: Prisma.chatWhereInput;
    /**
     * Limit how many chats to update.
     */
    limit?: number;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatIncludeUpdateManyAndReturn<ExtArgs> | null;
};
/**
 * chat upsert
 */
export type chatUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * The filter to search for the chat to update in case it exists.
     */
    where: Prisma.chatWhereUniqueInput;
    /**
     * In case the chat found by the `where` argument doesn't exist, create a new chat with this data.
     */
    create: Prisma.XOR<Prisma.chatCreateInput, Prisma.chatUncheckedCreateInput>;
    /**
     * In case the chat was found with the provided `where` argument, update it with this data.
     */
    update: Prisma.XOR<Prisma.chatUpdateInput, Prisma.chatUncheckedUpdateInput>;
};
/**
 * chat delete
 */
export type chatDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
    /**
     * Filter which chat to delete.
     */
    where: Prisma.chatWhereUniqueInput;
};
/**
 * chat deleteMany
 */
export type chatDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Filter which chats to delete
     */
    where?: Prisma.chatWhereInput;
    /**
     * Limit how many chats to delete.
     */
    limit?: number;
};
/**
 * chat.directus_files
 */
export type chat$directus_filesArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the directus_files
     */
    select?: Prisma.directus_filesSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the directus_files
     */
    omit?: Prisma.directus_filesOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.directus_filesInclude<ExtArgs> | null;
    where?: Prisma.directus_filesWhereInput;
};
/**
 * chat.directus_users_chat_user_createdTodirectus_users
 */
export type chat$directus_users_chat_user_createdTodirectus_usersArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the directus_users
     */
    select?: Prisma.directus_usersSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the directus_users
     */
    omit?: Prisma.directus_usersOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.directus_usersInclude<ExtArgs> | null;
    where?: Prisma.directus_usersWhereInput;
};
/**
 * chat.directus_users_chat_user_updatedTodirectus_users
 */
export type chat$directus_users_chat_user_updatedTodirectus_usersArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the directus_users
     */
    select?: Prisma.directus_usersSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the directus_users
     */
    omit?: Prisma.directus_usersOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.directus_usersInclude<ExtArgs> | null;
    where?: Prisma.directus_usersWhereInput;
};
/**
 * chat without action
 */
export type chatDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the chat
     */
    select?: Prisma.chatSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the chat
     */
    omit?: Prisma.chatOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.chatInclude<ExtArgs> | null;
};
export {};
