import type * as runtime from "@prisma/client/runtime/client";
import type * as $Enums from "../enums";
import type * as Prisma from "../internal/prismaNamespace";
/**
 * Model oauth_authorizations
 * This table contains check constraints and requires additional setup for migrations. Visit https://pris.ly/d/check-constraints for more info.
 */
export type oauth_authorizationsModel = runtime.Types.Result.DefaultSelection<Prisma.$oauth_authorizationsPayload>;
export type AggregateOauth_authorizations = {
    _count: Oauth_authorizationsCountAggregateOutputType | null;
    _min: Oauth_authorizationsMinAggregateOutputType | null;
    _max: Oauth_authorizationsMaxAggregateOutputType | null;
};
export type Oauth_authorizationsMinAggregateOutputType = {
    id: string | null;
    authorization_id: string | null;
    client_id: string | null;
    user_id: string | null;
    redirect_uri: string | null;
    scope: string | null;
    state: string | null;
    resource: string | null;
    code_challenge: string | null;
    code_challenge_method: $Enums.code_challenge_method | null;
    response_type: $Enums.oauth_response_type | null;
    status: $Enums.oauth_authorization_status | null;
    authorization_code: string | null;
    created_at: Date | null;
    expires_at: Date | null;
    approved_at: Date | null;
    nonce: string | null;
};
export type Oauth_authorizationsMaxAggregateOutputType = {
    id: string | null;
    authorization_id: string | null;
    client_id: string | null;
    user_id: string | null;
    redirect_uri: string | null;
    scope: string | null;
    state: string | null;
    resource: string | null;
    code_challenge: string | null;
    code_challenge_method: $Enums.code_challenge_method | null;
    response_type: $Enums.oauth_response_type | null;
    status: $Enums.oauth_authorization_status | null;
    authorization_code: string | null;
    created_at: Date | null;
    expires_at: Date | null;
    approved_at: Date | null;
    nonce: string | null;
};
export type Oauth_authorizationsCountAggregateOutputType = {
    id: number;
    authorization_id: number;
    client_id: number;
    user_id: number;
    redirect_uri: number;
    scope: number;
    state: number;
    resource: number;
    code_challenge: number;
    code_challenge_method: number;
    response_type: number;
    status: number;
    authorization_code: number;
    created_at: number;
    expires_at: number;
    approved_at: number;
    nonce: number;
    _all: number;
};
export type Oauth_authorizationsMinAggregateInputType = {
    id?: true;
    authorization_id?: true;
    client_id?: true;
    user_id?: true;
    redirect_uri?: true;
    scope?: true;
    state?: true;
    resource?: true;
    code_challenge?: true;
    code_challenge_method?: true;
    response_type?: true;
    status?: true;
    authorization_code?: true;
    created_at?: true;
    expires_at?: true;
    approved_at?: true;
    nonce?: true;
};
export type Oauth_authorizationsMaxAggregateInputType = {
    id?: true;
    authorization_id?: true;
    client_id?: true;
    user_id?: true;
    redirect_uri?: true;
    scope?: true;
    state?: true;
    resource?: true;
    code_challenge?: true;
    code_challenge_method?: true;
    response_type?: true;
    status?: true;
    authorization_code?: true;
    created_at?: true;
    expires_at?: true;
    approved_at?: true;
    nonce?: true;
};
export type Oauth_authorizationsCountAggregateInputType = {
    id?: true;
    authorization_id?: true;
    client_id?: true;
    user_id?: true;
    redirect_uri?: true;
    scope?: true;
    state?: true;
    resource?: true;
    code_challenge?: true;
    code_challenge_method?: true;
    response_type?: true;
    status?: true;
    authorization_code?: true;
    created_at?: true;
    expires_at?: true;
    approved_at?: true;
    nonce?: true;
    _all?: true;
};
export type Oauth_authorizationsAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Filter which oauth_authorizations to aggregate.
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of oauth_authorizations to fetch.
     */
    orderBy?: Prisma.oauth_authorizationsOrderByWithRelationInput | Prisma.oauth_authorizationsOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the start position
     */
    cursor?: Prisma.oauth_authorizationsWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` oauth_authorizations 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` oauth_authorizations.
     */
    skip?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Count returned oauth_authorizations
    **/
    _count?: true | Oauth_authorizationsCountAggregateInputType;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Select which fields to find the minimum value
    **/
    _min?: Oauth_authorizationsMinAggregateInputType;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
     *
     * Select which fields to find the maximum value
    **/
    _max?: Oauth_authorizationsMaxAggregateInputType;
};
export type GetOauth_authorizationsAggregateType<T extends Oauth_authorizationsAggregateArgs> = {
    [P in keyof T & keyof AggregateOauth_authorizations]: P extends '_count' | 'count' ? T[P] extends true ? number : Prisma.GetScalarType<T[P], AggregateOauth_authorizations[P]> : Prisma.GetScalarType<T[P], AggregateOauth_authorizations[P]>;
};
export type oauth_authorizationsGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    where?: Prisma.oauth_authorizationsWhereInput;
    orderBy?: Prisma.oauth_authorizationsOrderByWithAggregationInput | Prisma.oauth_authorizationsOrderByWithAggregationInput[];
    by: Prisma.Oauth_authorizationsScalarFieldEnum[] | Prisma.Oauth_authorizationsScalarFieldEnum;
    having?: Prisma.oauth_authorizationsScalarWhereWithAggregatesInput;
    take?: number;
    skip?: number;
    _count?: Oauth_authorizationsCountAggregateInputType | true;
    _min?: Oauth_authorizationsMinAggregateInputType;
    _max?: Oauth_authorizationsMaxAggregateInputType;
};
export type Oauth_authorizationsGroupByOutputType = {
    id: string;
    authorization_id: string;
    client_id: string;
    user_id: string | null;
    redirect_uri: string;
    scope: string;
    state: string | null;
    resource: string | null;
    code_challenge: string | null;
    code_challenge_method: $Enums.code_challenge_method | null;
    response_type: $Enums.oauth_response_type;
    status: $Enums.oauth_authorization_status;
    authorization_code: string | null;
    created_at: Date;
    expires_at: Date;
    approved_at: Date | null;
    nonce: string | null;
    _count: Oauth_authorizationsCountAggregateOutputType | null;
    _min: Oauth_authorizationsMinAggregateOutputType | null;
    _max: Oauth_authorizationsMaxAggregateOutputType | null;
};
type GetOauth_authorizationsGroupByPayload<T extends oauth_authorizationsGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<Oauth_authorizationsGroupByOutputType, T['by']> & {
    [P in ((keyof T) & (keyof Oauth_authorizationsGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], Oauth_authorizationsGroupByOutputType[P]> : Prisma.GetScalarType<T[P], Oauth_authorizationsGroupByOutputType[P]>;
}>>;
export type oauth_authorizationsWhereInput = {
    AND?: Prisma.oauth_authorizationsWhereInput | Prisma.oauth_authorizationsWhereInput[];
    OR?: Prisma.oauth_authorizationsWhereInput[];
    NOT?: Prisma.oauth_authorizationsWhereInput | Prisma.oauth_authorizationsWhereInput[];
    id?: Prisma.UuidFilter<"oauth_authorizations"> | string;
    authorization_id?: Prisma.StringFilter<"oauth_authorizations"> | string;
    client_id?: Prisma.UuidFilter<"oauth_authorizations"> | string;
    user_id?: Prisma.UuidNullableFilter<"oauth_authorizations"> | string | null;
    redirect_uri?: Prisma.StringFilter<"oauth_authorizations"> | string;
    scope?: Prisma.StringFilter<"oauth_authorizations"> | string;
    state?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    resource?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    code_challenge?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    code_challenge_method?: Prisma.Enumcode_challenge_methodNullableFilter<"oauth_authorizations"> | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFilter<"oauth_authorizations"> | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFilter<"oauth_authorizations"> | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    created_at?: Prisma.DateTimeFilter<"oauth_authorizations"> | Date | string;
    expires_at?: Prisma.DateTimeFilter<"oauth_authorizations"> | Date | string;
    approved_at?: Prisma.DateTimeNullableFilter<"oauth_authorizations"> | Date | string | null;
    nonce?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    oauth_clients?: Prisma.XOR<Prisma.Oauth_clientsScalarRelationFilter, Prisma.oauth_clientsWhereInput>;
    users?: Prisma.XOR<Prisma.UsersNullableScalarRelationFilter, Prisma.usersWhereInput> | null;
};
export type oauth_authorizationsOrderByWithRelationInput = {
    id?: Prisma.SortOrder;
    authorization_id?: Prisma.SortOrder;
    client_id?: Prisma.SortOrder;
    user_id?: Prisma.SortOrderInput | Prisma.SortOrder;
    redirect_uri?: Prisma.SortOrder;
    scope?: Prisma.SortOrder;
    state?: Prisma.SortOrderInput | Prisma.SortOrder;
    resource?: Prisma.SortOrderInput | Prisma.SortOrder;
    code_challenge?: Prisma.SortOrderInput | Prisma.SortOrder;
    code_challenge_method?: Prisma.SortOrderInput | Prisma.SortOrder;
    response_type?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    authorization_code?: Prisma.SortOrderInput | Prisma.SortOrder;
    created_at?: Prisma.SortOrder;
    expires_at?: Prisma.SortOrder;
    approved_at?: Prisma.SortOrderInput | Prisma.SortOrder;
    nonce?: Prisma.SortOrderInput | Prisma.SortOrder;
    oauth_clients?: Prisma.oauth_clientsOrderByWithRelationInput;
    users?: Prisma.usersOrderByWithRelationInput;
};
export type oauth_authorizationsWhereUniqueInput = Prisma.AtLeast<{
    id?: string;
    authorization_id?: string;
    authorization_code?: string;
    AND?: Prisma.oauth_authorizationsWhereInput | Prisma.oauth_authorizationsWhereInput[];
    OR?: Prisma.oauth_authorizationsWhereInput[];
    NOT?: Prisma.oauth_authorizationsWhereInput | Prisma.oauth_authorizationsWhereInput[];
    client_id?: Prisma.UuidFilter<"oauth_authorizations"> | string;
    user_id?: Prisma.UuidNullableFilter<"oauth_authorizations"> | string | null;
    redirect_uri?: Prisma.StringFilter<"oauth_authorizations"> | string;
    scope?: Prisma.StringFilter<"oauth_authorizations"> | string;
    state?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    resource?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    code_challenge?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    code_challenge_method?: Prisma.Enumcode_challenge_methodNullableFilter<"oauth_authorizations"> | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFilter<"oauth_authorizations"> | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFilter<"oauth_authorizations"> | $Enums.oauth_authorization_status;
    created_at?: Prisma.DateTimeFilter<"oauth_authorizations"> | Date | string;
    expires_at?: Prisma.DateTimeFilter<"oauth_authorizations"> | Date | string;
    approved_at?: Prisma.DateTimeNullableFilter<"oauth_authorizations"> | Date | string | null;
    nonce?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    oauth_clients?: Prisma.XOR<Prisma.Oauth_clientsScalarRelationFilter, Prisma.oauth_clientsWhereInput>;
    users?: Prisma.XOR<Prisma.UsersNullableScalarRelationFilter, Prisma.usersWhereInput> | null;
}, "id" | "authorization_id" | "authorization_code">;
export type oauth_authorizationsOrderByWithAggregationInput = {
    id?: Prisma.SortOrder;
    authorization_id?: Prisma.SortOrder;
    client_id?: Prisma.SortOrder;
    user_id?: Prisma.SortOrderInput | Prisma.SortOrder;
    redirect_uri?: Prisma.SortOrder;
    scope?: Prisma.SortOrder;
    state?: Prisma.SortOrderInput | Prisma.SortOrder;
    resource?: Prisma.SortOrderInput | Prisma.SortOrder;
    code_challenge?: Prisma.SortOrderInput | Prisma.SortOrder;
    code_challenge_method?: Prisma.SortOrderInput | Prisma.SortOrder;
    response_type?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    authorization_code?: Prisma.SortOrderInput | Prisma.SortOrder;
    created_at?: Prisma.SortOrder;
    expires_at?: Prisma.SortOrder;
    approved_at?: Prisma.SortOrderInput | Prisma.SortOrder;
    nonce?: Prisma.SortOrderInput | Prisma.SortOrder;
    _count?: Prisma.oauth_authorizationsCountOrderByAggregateInput;
    _max?: Prisma.oauth_authorizationsMaxOrderByAggregateInput;
    _min?: Prisma.oauth_authorizationsMinOrderByAggregateInput;
};
export type oauth_authorizationsScalarWhereWithAggregatesInput = {
    AND?: Prisma.oauth_authorizationsScalarWhereWithAggregatesInput | Prisma.oauth_authorizationsScalarWhereWithAggregatesInput[];
    OR?: Prisma.oauth_authorizationsScalarWhereWithAggregatesInput[];
    NOT?: Prisma.oauth_authorizationsScalarWhereWithAggregatesInput | Prisma.oauth_authorizationsScalarWhereWithAggregatesInput[];
    id?: Prisma.UuidWithAggregatesFilter<"oauth_authorizations"> | string;
    authorization_id?: Prisma.StringWithAggregatesFilter<"oauth_authorizations"> | string;
    client_id?: Prisma.UuidWithAggregatesFilter<"oauth_authorizations"> | string;
    user_id?: Prisma.UuidNullableWithAggregatesFilter<"oauth_authorizations"> | string | null;
    redirect_uri?: Prisma.StringWithAggregatesFilter<"oauth_authorizations"> | string;
    scope?: Prisma.StringWithAggregatesFilter<"oauth_authorizations"> | string;
    state?: Prisma.StringNullableWithAggregatesFilter<"oauth_authorizations"> | string | null;
    resource?: Prisma.StringNullableWithAggregatesFilter<"oauth_authorizations"> | string | null;
    code_challenge?: Prisma.StringNullableWithAggregatesFilter<"oauth_authorizations"> | string | null;
    code_challenge_method?: Prisma.Enumcode_challenge_methodNullableWithAggregatesFilter<"oauth_authorizations"> | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeWithAggregatesFilter<"oauth_authorizations"> | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusWithAggregatesFilter<"oauth_authorizations"> | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.StringNullableWithAggregatesFilter<"oauth_authorizations"> | string | null;
    created_at?: Prisma.DateTimeWithAggregatesFilter<"oauth_authorizations"> | Date | string;
    expires_at?: Prisma.DateTimeWithAggregatesFilter<"oauth_authorizations"> | Date | string;
    approved_at?: Prisma.DateTimeNullableWithAggregatesFilter<"oauth_authorizations"> | Date | string | null;
    nonce?: Prisma.StringNullableWithAggregatesFilter<"oauth_authorizations"> | string | null;
};
export type oauth_authorizationsCreateInput = {
    id: string;
    authorization_id: string;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
    oauth_clients: Prisma.oauth_clientsCreateNestedOneWithoutOauth_authorizationsInput;
    users?: Prisma.usersCreateNestedOneWithoutOauth_authorizationsInput;
};
export type oauth_authorizationsUncheckedCreateInput = {
    id: string;
    authorization_id: string;
    client_id: string;
    user_id?: string | null;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
};
export type oauth_authorizationsUpdateInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    oauth_clients?: Prisma.oauth_clientsUpdateOneRequiredWithoutOauth_authorizationsNestedInput;
    users?: Prisma.usersUpdateOneWithoutOauth_authorizationsNestedInput;
};
export type oauth_authorizationsUncheckedUpdateInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    client_id?: Prisma.StringFieldUpdateOperationsInput | string;
    user_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsCreateManyInput = {
    id: string;
    authorization_id: string;
    client_id: string;
    user_id?: string | null;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
};
export type oauth_authorizationsUpdateManyMutationInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsUncheckedUpdateManyInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    client_id?: Prisma.StringFieldUpdateOperationsInput | string;
    user_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsCountOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    authorization_id?: Prisma.SortOrder;
    client_id?: Prisma.SortOrder;
    user_id?: Prisma.SortOrder;
    redirect_uri?: Prisma.SortOrder;
    scope?: Prisma.SortOrder;
    state?: Prisma.SortOrder;
    resource?: Prisma.SortOrder;
    code_challenge?: Prisma.SortOrder;
    code_challenge_method?: Prisma.SortOrder;
    response_type?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    authorization_code?: Prisma.SortOrder;
    created_at?: Prisma.SortOrder;
    expires_at?: Prisma.SortOrder;
    approved_at?: Prisma.SortOrder;
    nonce?: Prisma.SortOrder;
};
export type oauth_authorizationsMaxOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    authorization_id?: Prisma.SortOrder;
    client_id?: Prisma.SortOrder;
    user_id?: Prisma.SortOrder;
    redirect_uri?: Prisma.SortOrder;
    scope?: Prisma.SortOrder;
    state?: Prisma.SortOrder;
    resource?: Prisma.SortOrder;
    code_challenge?: Prisma.SortOrder;
    code_challenge_method?: Prisma.SortOrder;
    response_type?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    authorization_code?: Prisma.SortOrder;
    created_at?: Prisma.SortOrder;
    expires_at?: Prisma.SortOrder;
    approved_at?: Prisma.SortOrder;
    nonce?: Prisma.SortOrder;
};
export type oauth_authorizationsMinOrderByAggregateInput = {
    id?: Prisma.SortOrder;
    authorization_id?: Prisma.SortOrder;
    client_id?: Prisma.SortOrder;
    user_id?: Prisma.SortOrder;
    redirect_uri?: Prisma.SortOrder;
    scope?: Prisma.SortOrder;
    state?: Prisma.SortOrder;
    resource?: Prisma.SortOrder;
    code_challenge?: Prisma.SortOrder;
    code_challenge_method?: Prisma.SortOrder;
    response_type?: Prisma.SortOrder;
    status?: Prisma.SortOrder;
    authorization_code?: Prisma.SortOrder;
    created_at?: Prisma.SortOrder;
    expires_at?: Prisma.SortOrder;
    approved_at?: Prisma.SortOrder;
    nonce?: Prisma.SortOrder;
};
export type Oauth_authorizationsListRelationFilter = {
    every?: Prisma.oauth_authorizationsWhereInput;
    some?: Prisma.oauth_authorizationsWhereInput;
    none?: Prisma.oauth_authorizationsWhereInput;
};
export type oauth_authorizationsOrderByRelationAggregateInput = {
    _count?: Prisma.SortOrder;
};
export type Enumoauth_response_typeFieldUpdateOperationsInput = {
    set?: $Enums.oauth_response_type;
};
export type Enumoauth_authorization_statusFieldUpdateOperationsInput = {
    set?: $Enums.oauth_authorization_status;
};
export type oauth_authorizationsCreateNestedManyWithoutOauth_clientsInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput> | Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput | Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyOauth_clientsInputEnvelope;
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
};
export type oauth_authorizationsUncheckedCreateNestedManyWithoutOauth_clientsInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput> | Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput | Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyOauth_clientsInputEnvelope;
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
};
export type oauth_authorizationsUpdateManyWithoutOauth_clientsNestedInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput> | Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput | Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput[];
    upsert?: Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutOauth_clientsInput | Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutOauth_clientsInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyOauth_clientsInputEnvelope;
    set?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    disconnect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    delete?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    update?: Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutOauth_clientsInput | Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutOauth_clientsInput[];
    updateMany?: Prisma.oauth_authorizationsUpdateManyWithWhereWithoutOauth_clientsInput | Prisma.oauth_authorizationsUpdateManyWithWhereWithoutOauth_clientsInput[];
    deleteMany?: Prisma.oauth_authorizationsScalarWhereInput | Prisma.oauth_authorizationsScalarWhereInput[];
};
export type oauth_authorizationsUncheckedUpdateManyWithoutOauth_clientsNestedInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput> | Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput | Prisma.oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput[];
    upsert?: Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutOauth_clientsInput | Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutOauth_clientsInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyOauth_clientsInputEnvelope;
    set?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    disconnect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    delete?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    update?: Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutOauth_clientsInput | Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutOauth_clientsInput[];
    updateMany?: Prisma.oauth_authorizationsUpdateManyWithWhereWithoutOauth_clientsInput | Prisma.oauth_authorizationsUpdateManyWithWhereWithoutOauth_clientsInput[];
    deleteMany?: Prisma.oauth_authorizationsScalarWhereInput | Prisma.oauth_authorizationsScalarWhereInput[];
};
export type oauth_authorizationsCreateNestedManyWithoutUsersInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput> | Prisma.oauth_authorizationsCreateWithoutUsersInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput | Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyUsersInputEnvelope;
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
};
export type oauth_authorizationsUncheckedCreateNestedManyWithoutUsersInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput> | Prisma.oauth_authorizationsCreateWithoutUsersInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput | Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyUsersInputEnvelope;
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
};
export type oauth_authorizationsUpdateManyWithoutUsersNestedInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput> | Prisma.oauth_authorizationsCreateWithoutUsersInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput | Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput[];
    upsert?: Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutUsersInput | Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutUsersInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyUsersInputEnvelope;
    set?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    disconnect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    delete?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    update?: Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutUsersInput | Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutUsersInput[];
    updateMany?: Prisma.oauth_authorizationsUpdateManyWithWhereWithoutUsersInput | Prisma.oauth_authorizationsUpdateManyWithWhereWithoutUsersInput[];
    deleteMany?: Prisma.oauth_authorizationsScalarWhereInput | Prisma.oauth_authorizationsScalarWhereInput[];
};
export type oauth_authorizationsUncheckedUpdateManyWithoutUsersNestedInput = {
    create?: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput> | Prisma.oauth_authorizationsCreateWithoutUsersInput[] | Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput[];
    connectOrCreate?: Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput | Prisma.oauth_authorizationsCreateOrConnectWithoutUsersInput[];
    upsert?: Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutUsersInput | Prisma.oauth_authorizationsUpsertWithWhereUniqueWithoutUsersInput[];
    createMany?: Prisma.oauth_authorizationsCreateManyUsersInputEnvelope;
    set?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    disconnect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    delete?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    connect?: Prisma.oauth_authorizationsWhereUniqueInput | Prisma.oauth_authorizationsWhereUniqueInput[];
    update?: Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutUsersInput | Prisma.oauth_authorizationsUpdateWithWhereUniqueWithoutUsersInput[];
    updateMany?: Prisma.oauth_authorizationsUpdateManyWithWhereWithoutUsersInput | Prisma.oauth_authorizationsUpdateManyWithWhereWithoutUsersInput[];
    deleteMany?: Prisma.oauth_authorizationsScalarWhereInput | Prisma.oauth_authorizationsScalarWhereInput[];
};
export type oauth_authorizationsCreateWithoutOauth_clientsInput = {
    id: string;
    authorization_id: string;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
    users?: Prisma.usersCreateNestedOneWithoutOauth_authorizationsInput;
};
export type oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput = {
    id: string;
    authorization_id: string;
    user_id?: string | null;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
};
export type oauth_authorizationsCreateOrConnectWithoutOauth_clientsInput = {
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    create: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput>;
};
export type oauth_authorizationsCreateManyOauth_clientsInputEnvelope = {
    data: Prisma.oauth_authorizationsCreateManyOauth_clientsInput | Prisma.oauth_authorizationsCreateManyOauth_clientsInput[];
    skipDuplicates?: boolean;
};
export type oauth_authorizationsUpsertWithWhereUniqueWithoutOauth_clientsInput = {
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    update: Prisma.XOR<Prisma.oauth_authorizationsUpdateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedUpdateWithoutOauth_clientsInput>;
    create: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedCreateWithoutOauth_clientsInput>;
};
export type oauth_authorizationsUpdateWithWhereUniqueWithoutOauth_clientsInput = {
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateWithoutOauth_clientsInput, Prisma.oauth_authorizationsUncheckedUpdateWithoutOauth_clientsInput>;
};
export type oauth_authorizationsUpdateManyWithWhereWithoutOauth_clientsInput = {
    where: Prisma.oauth_authorizationsScalarWhereInput;
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateManyMutationInput, Prisma.oauth_authorizationsUncheckedUpdateManyWithoutOauth_clientsInput>;
};
export type oauth_authorizationsScalarWhereInput = {
    AND?: Prisma.oauth_authorizationsScalarWhereInput | Prisma.oauth_authorizationsScalarWhereInput[];
    OR?: Prisma.oauth_authorizationsScalarWhereInput[];
    NOT?: Prisma.oauth_authorizationsScalarWhereInput | Prisma.oauth_authorizationsScalarWhereInput[];
    id?: Prisma.UuidFilter<"oauth_authorizations"> | string;
    authorization_id?: Prisma.StringFilter<"oauth_authorizations"> | string;
    client_id?: Prisma.UuidFilter<"oauth_authorizations"> | string;
    user_id?: Prisma.UuidNullableFilter<"oauth_authorizations"> | string | null;
    redirect_uri?: Prisma.StringFilter<"oauth_authorizations"> | string;
    scope?: Prisma.StringFilter<"oauth_authorizations"> | string;
    state?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    resource?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    code_challenge?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    code_challenge_method?: Prisma.Enumcode_challenge_methodNullableFilter<"oauth_authorizations"> | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFilter<"oauth_authorizations"> | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFilter<"oauth_authorizations"> | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
    created_at?: Prisma.DateTimeFilter<"oauth_authorizations"> | Date | string;
    expires_at?: Prisma.DateTimeFilter<"oauth_authorizations"> | Date | string;
    approved_at?: Prisma.DateTimeNullableFilter<"oauth_authorizations"> | Date | string | null;
    nonce?: Prisma.StringNullableFilter<"oauth_authorizations"> | string | null;
};
export type oauth_authorizationsCreateWithoutUsersInput = {
    id: string;
    authorization_id: string;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
    oauth_clients: Prisma.oauth_clientsCreateNestedOneWithoutOauth_authorizationsInput;
};
export type oauth_authorizationsUncheckedCreateWithoutUsersInput = {
    id: string;
    authorization_id: string;
    client_id: string;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
};
export type oauth_authorizationsCreateOrConnectWithoutUsersInput = {
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    create: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput>;
};
export type oauth_authorizationsCreateManyUsersInputEnvelope = {
    data: Prisma.oauth_authorizationsCreateManyUsersInput | Prisma.oauth_authorizationsCreateManyUsersInput[];
    skipDuplicates?: boolean;
};
export type oauth_authorizationsUpsertWithWhereUniqueWithoutUsersInput = {
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    update: Prisma.XOR<Prisma.oauth_authorizationsUpdateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedUpdateWithoutUsersInput>;
    create: Prisma.XOR<Prisma.oauth_authorizationsCreateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedCreateWithoutUsersInput>;
};
export type oauth_authorizationsUpdateWithWhereUniqueWithoutUsersInput = {
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateWithoutUsersInput, Prisma.oauth_authorizationsUncheckedUpdateWithoutUsersInput>;
};
export type oauth_authorizationsUpdateManyWithWhereWithoutUsersInput = {
    where: Prisma.oauth_authorizationsScalarWhereInput;
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateManyMutationInput, Prisma.oauth_authorizationsUncheckedUpdateManyWithoutUsersInput>;
};
export type oauth_authorizationsCreateManyOauth_clientsInput = {
    id: string;
    authorization_id: string;
    user_id?: string | null;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
};
export type oauth_authorizationsUpdateWithoutOauth_clientsInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    users?: Prisma.usersUpdateOneWithoutOauth_authorizationsNestedInput;
};
export type oauth_authorizationsUncheckedUpdateWithoutOauth_clientsInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    user_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsUncheckedUpdateManyWithoutOauth_clientsInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    user_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsCreateManyUsersInput = {
    id: string;
    authorization_id: string;
    client_id: string;
    redirect_uri: string;
    scope: string;
    state?: string | null;
    resource?: string | null;
    code_challenge?: string | null;
    code_challenge_method?: $Enums.code_challenge_method | null;
    response_type?: $Enums.oauth_response_type;
    status?: $Enums.oauth_authorization_status;
    authorization_code?: string | null;
    created_at?: Date | string;
    expires_at?: Date | string;
    approved_at?: Date | string | null;
    nonce?: string | null;
};
export type oauth_authorizationsUpdateWithoutUsersInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    oauth_clients?: Prisma.oauth_clientsUpdateOneRequiredWithoutOauth_authorizationsNestedInput;
};
export type oauth_authorizationsUncheckedUpdateWithoutUsersInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    client_id?: Prisma.StringFieldUpdateOperationsInput | string;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsUncheckedUpdateManyWithoutUsersInput = {
    id?: Prisma.StringFieldUpdateOperationsInput | string;
    authorization_id?: Prisma.StringFieldUpdateOperationsInput | string;
    client_id?: Prisma.StringFieldUpdateOperationsInput | string;
    redirect_uri?: Prisma.StringFieldUpdateOperationsInput | string;
    scope?: Prisma.StringFieldUpdateOperationsInput | string;
    state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    resource?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    code_challenge_method?: Prisma.NullableEnumcode_challenge_methodFieldUpdateOperationsInput | $Enums.code_challenge_method | null;
    response_type?: Prisma.Enumoauth_response_typeFieldUpdateOperationsInput | $Enums.oauth_response_type;
    status?: Prisma.Enumoauth_authorization_statusFieldUpdateOperationsInput | $Enums.oauth_authorization_status;
    authorization_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
    created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    expires_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string;
    approved_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null;
    nonce?: Prisma.NullableStringFieldUpdateOperationsInput | string | null;
};
export type oauth_authorizationsSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
    id?: boolean;
    authorization_id?: boolean;
    client_id?: boolean;
    user_id?: boolean;
    redirect_uri?: boolean;
    scope?: boolean;
    state?: boolean;
    resource?: boolean;
    code_challenge?: boolean;
    code_challenge_method?: boolean;
    response_type?: boolean;
    status?: boolean;
    authorization_code?: boolean;
    created_at?: boolean;
    expires_at?: boolean;
    approved_at?: boolean;
    nonce?: boolean;
    oauth_clients?: boolean | Prisma.oauth_clientsDefaultArgs<ExtArgs>;
    users?: boolean | Prisma.oauth_authorizations$usersArgs<ExtArgs>;
}, ExtArgs["result"]["oauth_authorizations"]>;
export type oauth_authorizationsSelectCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
    id?: boolean;
    authorization_id?: boolean;
    client_id?: boolean;
    user_id?: boolean;
    redirect_uri?: boolean;
    scope?: boolean;
    state?: boolean;
    resource?: boolean;
    code_challenge?: boolean;
    code_challenge_method?: boolean;
    response_type?: boolean;
    status?: boolean;
    authorization_code?: boolean;
    created_at?: boolean;
    expires_at?: boolean;
    approved_at?: boolean;
    nonce?: boolean;
    oauth_clients?: boolean | Prisma.oauth_clientsDefaultArgs<ExtArgs>;
    users?: boolean | Prisma.oauth_authorizations$usersArgs<ExtArgs>;
}, ExtArgs["result"]["oauth_authorizations"]>;
export type oauth_authorizationsSelectUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
    id?: boolean;
    authorization_id?: boolean;
    client_id?: boolean;
    user_id?: boolean;
    redirect_uri?: boolean;
    scope?: boolean;
    state?: boolean;
    resource?: boolean;
    code_challenge?: boolean;
    code_challenge_method?: boolean;
    response_type?: boolean;
    status?: boolean;
    authorization_code?: boolean;
    created_at?: boolean;
    expires_at?: boolean;
    approved_at?: boolean;
    nonce?: boolean;
    oauth_clients?: boolean | Prisma.oauth_clientsDefaultArgs<ExtArgs>;
    users?: boolean | Prisma.oauth_authorizations$usersArgs<ExtArgs>;
}, ExtArgs["result"]["oauth_authorizations"]>;
export type oauth_authorizationsSelectScalar = {
    id?: boolean;
    authorization_id?: boolean;
    client_id?: boolean;
    user_id?: boolean;
    redirect_uri?: boolean;
    scope?: boolean;
    state?: boolean;
    resource?: boolean;
    code_challenge?: boolean;
    code_challenge_method?: boolean;
    response_type?: boolean;
    status?: boolean;
    authorization_code?: boolean;
    created_at?: boolean;
    expires_at?: boolean;
    approved_at?: boolean;
    nonce?: boolean;
};
export type oauth_authorizationsOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "authorization_id" | "client_id" | "user_id" | "redirect_uri" | "scope" | "state" | "resource" | "code_challenge" | "code_challenge_method" | "response_type" | "status" | "authorization_code" | "created_at" | "expires_at" | "approved_at" | "nonce", ExtArgs["result"]["oauth_authorizations"]>;
export type oauth_authorizationsInclude<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    oauth_clients?: boolean | Prisma.oauth_clientsDefaultArgs<ExtArgs>;
    users?: boolean | Prisma.oauth_authorizations$usersArgs<ExtArgs>;
};
export type oauth_authorizationsIncludeCreateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    oauth_clients?: boolean | Prisma.oauth_clientsDefaultArgs<ExtArgs>;
    users?: boolean | Prisma.oauth_authorizations$usersArgs<ExtArgs>;
};
export type oauth_authorizationsIncludeUpdateManyAndReturn<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    oauth_clients?: boolean | Prisma.oauth_clientsDefaultArgs<ExtArgs>;
    users?: boolean | Prisma.oauth_authorizations$usersArgs<ExtArgs>;
};
export type $oauth_authorizationsPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    name: "oauth_authorizations";
    objects: {
        oauth_clients: Prisma.$oauth_clientsPayload<ExtArgs>;
        users: Prisma.$usersPayload<ExtArgs> | null;
    };
    scalars: runtime.Types.Extensions.GetPayloadResult<{
        id: string;
        authorization_id: string;
        client_id: string;
        user_id: string | null;
        redirect_uri: string;
        scope: string;
        state: string | null;
        resource: string | null;
        code_challenge: string | null;
        code_challenge_method: $Enums.code_challenge_method | null;
        response_type: $Enums.oauth_response_type;
        status: $Enums.oauth_authorization_status;
        authorization_code: string | null;
        created_at: Date;
        expires_at: Date;
        approved_at: Date | null;
        nonce: string | null;
    }, ExtArgs["result"]["oauth_authorizations"]>;
    composites: {};
};
export type oauth_authorizationsGetPayload<S extends boolean | null | undefined | oauth_authorizationsDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload, S>;
export type oauth_authorizationsCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = Omit<oauth_authorizationsFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
    select?: Oauth_authorizationsCountAggregateInputType | true;
};
export interface oauth_authorizationsDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
    [K: symbol]: {
        types: Prisma.TypeMap<ExtArgs>['model']['oauth_authorizations'];
        meta: {
            name: 'oauth_authorizations';
        };
    };
    /**
     * Find zero or one Oauth_authorizations that matches the filter.
     * @param {oauth_authorizationsFindUniqueArgs} args - Arguments to find a Oauth_authorizations
     * @example
     * // Get one Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.findUnique({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findUnique<T extends oauth_authorizationsFindUniqueArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsFindUniqueArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    /**
     * Find one Oauth_authorizations that matches the filter or throw an error with `error.code='P2025'`
     * if no matches were found.
     * @param {oauth_authorizationsFindUniqueOrThrowArgs} args - Arguments to find a Oauth_authorizations
     * @example
     * // Get one Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.findUniqueOrThrow({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findUniqueOrThrow<T extends oauth_authorizationsFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Find the first Oauth_authorizations 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 {oauth_authorizationsFindFirstArgs} args - Arguments to find a Oauth_authorizations
     * @example
     * // Get one Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.findFirst({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findFirst<T extends oauth_authorizationsFindFirstArgs>(args?: Prisma.SelectSubset<T, oauth_authorizationsFindFirstArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>;
    /**
     * Find the first Oauth_authorizations 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 {oauth_authorizationsFindFirstOrThrowArgs} args - Arguments to find a Oauth_authorizations
     * @example
     * // Get one Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.findFirstOrThrow({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     */
    findFirstOrThrow<T extends oauth_authorizationsFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, oauth_authorizationsFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Find zero or more Oauth_authorizations 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 {oauth_authorizationsFindManyArgs} args - Arguments to filter and select certain fields only.
     * @example
     * // Get all Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.findMany()
     *
     * // Get first 10 Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.findMany({ take: 10 })
     *
     * // Only select the `id`
     * const oauth_authorizationsWithIdOnly = await prisma.oauth_authorizations.findMany({ select: { id: true } })
     *
     */
    findMany<T extends oauth_authorizationsFindManyArgs>(args?: Prisma.SelectSubset<T, oauth_authorizationsFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>;
    /**
     * Create a Oauth_authorizations.
     * @param {oauth_authorizationsCreateArgs} args - Arguments to create a Oauth_authorizations.
     * @example
     * // Create one Oauth_authorizations
     * const Oauth_authorizations = await prisma.oauth_authorizations.create({
     *   data: {
     *     // ... data to create a Oauth_authorizations
     *   }
     * })
     *
     */
    create<T extends oauth_authorizationsCreateArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsCreateArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Create many Oauth_authorizations.
     * @param {oauth_authorizationsCreateManyArgs} args - Arguments to create many Oauth_authorizations.
     * @example
     * // Create many Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.createMany({
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     *
     */
    createMany<T extends oauth_authorizationsCreateManyArgs>(args?: Prisma.SelectSubset<T, oauth_authorizationsCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>;
    /**
     * Create many Oauth_authorizations and returns the data saved in the database.
     * @param {oauth_authorizationsCreateManyAndReturnArgs} args - Arguments to create many Oauth_authorizations.
     * @example
     * // Create many Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.createManyAndReturn({
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     *
     * // Create many Oauth_authorizations and only return the `id`
     * const oauth_authorizationsWithIdOnly = await prisma.oauth_authorizations.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 oauth_authorizationsCreateManyAndReturnArgs>(args?: Prisma.SelectSubset<T, oauth_authorizationsCreateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "createManyAndReturn", GlobalOmitOptions>>;
    /**
     * Delete a Oauth_authorizations.
     * @param {oauth_authorizationsDeleteArgs} args - Arguments to delete one Oauth_authorizations.
     * @example
     * // Delete one Oauth_authorizations
     * const Oauth_authorizations = await prisma.oauth_authorizations.delete({
     *   where: {
     *     // ... filter to delete one Oauth_authorizations
     *   }
     * })
     *
     */
    delete<T extends oauth_authorizationsDeleteArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsDeleteArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Update one Oauth_authorizations.
     * @param {oauth_authorizationsUpdateArgs} args - Arguments to update one Oauth_authorizations.
     * @example
     * // Update one Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.update({
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: {
     *     // ... provide data here
     *   }
     * })
     *
     */
    update<T extends oauth_authorizationsUpdateArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsUpdateArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Delete zero or more Oauth_authorizations.
     * @param {oauth_authorizationsDeleteManyArgs} args - Arguments to filter Oauth_authorizations to delete.
     * @example
     * // Delete a few Oauth_authorizations
     * const { count } = await prisma.oauth_authorizations.deleteMany({
     *   where: {
     *     // ... provide filter here
     *   }
     * })
     *
     */
    deleteMany<T extends oauth_authorizationsDeleteManyArgs>(args?: Prisma.SelectSubset<T, oauth_authorizationsDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>;
    /**
     * Update zero or more Oauth_authorizations.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {oauth_authorizationsUpdateManyArgs} args - Arguments to update one or more rows.
     * @example
     * // Update many Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.updateMany({
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: {
     *     // ... provide data here
     *   }
     * })
     *
     */
    updateMany<T extends oauth_authorizationsUpdateManyArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>;
    /**
     * Update zero or more Oauth_authorizations and returns the data updated in the database.
     * @param {oauth_authorizationsUpdateManyAndReturnArgs} args - Arguments to update many Oauth_authorizations.
     * @example
     * // Update many Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.updateManyAndReturn({
     *   where: {
     *     // ... provide filter here
     *   },
     *   data: [
     *     // ... provide data here
     *   ]
     * })
     *
     * // Update zero or more Oauth_authorizations and only return the `id`
     * const oauth_authorizationsWithIdOnly = await prisma.oauth_authorizations.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 oauth_authorizationsUpdateManyAndReturnArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsUpdateManyAndReturnArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "updateManyAndReturn", GlobalOmitOptions>>;
    /**
     * Create or update one Oauth_authorizations.
     * @param {oauth_authorizationsUpsertArgs} args - Arguments to update or create a Oauth_authorizations.
     * @example
     * // Update or create a Oauth_authorizations
     * const oauth_authorizations = await prisma.oauth_authorizations.upsert({
     *   create: {
     *     // ... data to create a Oauth_authorizations
     *   },
     *   update: {
     *     // ... in case it already exists, update
     *   },
     *   where: {
     *     // ... the filter for the Oauth_authorizations we want to update
     *   }
     * })
     */
    upsert<T extends oauth_authorizationsUpsertArgs>(args: Prisma.SelectSubset<T, oauth_authorizationsUpsertArgs<ExtArgs>>): Prisma.Prisma__oauth_authorizationsClient<runtime.Types.Result.GetResult<Prisma.$oauth_authorizationsPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>;
    /**
     * Count the number of Oauth_authorizations.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {oauth_authorizationsCountArgs} args - Arguments to filter Oauth_authorizations to count.
     * @example
     * // Count the number of Oauth_authorizations
     * const count = await prisma.oauth_authorizations.count({
     *   where: {
     *     // ... the filter for the Oauth_authorizations we want to count
     *   }
     * })
    **/
    count<T extends oauth_authorizationsCountArgs>(args?: Prisma.Subset<T, oauth_authorizationsCountArgs>): Prisma.PrismaPromise<T extends runtime.Types.Utils.Record<'select', any> ? T['select'] extends true ? number : Prisma.GetScalarType<T['select'], Oauth_authorizationsCountAggregateOutputType> : number>;
    /**
     * Allows you to perform aggregations operations on a Oauth_authorizations.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {Oauth_authorizationsAggregateArgs} 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 Oauth_authorizationsAggregateArgs>(args: Prisma.Subset<T, Oauth_authorizationsAggregateArgs>): Prisma.PrismaPromise<GetOauth_authorizationsAggregateType<T>>;
    /**
     * Group by Oauth_authorizations.
     * Note, that providing `undefined` is treated as the value not being there.
     * Read more here: https://pris.ly/d/null-undefined
     * @param {oauth_authorizationsGroupByArgs} 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 oauth_authorizationsGroupByArgs, HasSelectOrTake extends Prisma.Or<Prisma.Extends<'skip', Prisma.Keys<T>>, Prisma.Extends<'take', Prisma.Keys<T>>>, OrderByArg extends Prisma.True extends HasSelectOrTake ? {
        orderBy: oauth_authorizationsGroupByArgs['orderBy'];
    } : {
        orderBy?: oauth_authorizationsGroupByArgs['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, oauth_authorizationsGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetOauth_authorizationsGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>;
    /**
     * Fields of the oauth_authorizations model
     */
    readonly fields: oauth_authorizationsFieldRefs;
}
/**
 * The delegate class that acts as a "Promise-like" for oauth_authorizations.
 * 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__oauth_authorizationsClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
    readonly [Symbol.toStringTag]: "PrismaPromise";
    oauth_clients<T extends Prisma.oauth_clientsDefaultArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.oauth_clientsDefaultArgs<ExtArgs>>): Prisma.Prisma__oauth_clientsClient<runtime.Types.Result.GetResult<Prisma.$oauth_clientsPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions>;
    users<T extends Prisma.oauth_authorizations$usersArgs<ExtArgs> = {}>(args?: Prisma.Subset<T, Prisma.oauth_authorizations$usersArgs<ExtArgs>>): Prisma.Prisma__usersClient<runtime.Types.Result.GetResult<Prisma.$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 oauth_authorizations model
 */
export interface oauth_authorizationsFieldRefs {
    readonly id: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly authorization_id: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly client_id: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly user_id: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly redirect_uri: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly scope: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly state: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly resource: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly code_challenge: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly code_challenge_method: Prisma.FieldRef<"oauth_authorizations", 'code_challenge_method'>;
    readonly response_type: Prisma.FieldRef<"oauth_authorizations", 'oauth_response_type'>;
    readonly status: Prisma.FieldRef<"oauth_authorizations", 'oauth_authorization_status'>;
    readonly authorization_code: Prisma.FieldRef<"oauth_authorizations", 'String'>;
    readonly created_at: Prisma.FieldRef<"oauth_authorizations", 'DateTime'>;
    readonly expires_at: Prisma.FieldRef<"oauth_authorizations", 'DateTime'>;
    readonly approved_at: Prisma.FieldRef<"oauth_authorizations", 'DateTime'>;
    readonly nonce: Prisma.FieldRef<"oauth_authorizations", 'String'>;
}
/**
 * oauth_authorizations findUnique
 */
export type oauth_authorizationsFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * Filter, which oauth_authorizations to fetch.
     */
    where: Prisma.oauth_authorizationsWhereUniqueInput;
};
/**
 * oauth_authorizations findUniqueOrThrow
 */
export type oauth_authorizationsFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * Filter, which oauth_authorizations to fetch.
     */
    where: Prisma.oauth_authorizationsWhereUniqueInput;
};
/**
 * oauth_authorizations findFirst
 */
export type oauth_authorizationsFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * Filter, which oauth_authorizations to fetch.
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of oauth_authorizations to fetch.
     */
    orderBy?: Prisma.oauth_authorizationsOrderByWithRelationInput | Prisma.oauth_authorizationsOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the position for searching for oauth_authorizations.
     */
    cursor?: Prisma.oauth_authorizationsWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` oauth_authorizations 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` oauth_authorizations.
     */
    skip?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
     *
     * Filter by unique combinations of oauth_authorizations.
     */
    distinct?: Prisma.Oauth_authorizationsScalarFieldEnum | Prisma.Oauth_authorizationsScalarFieldEnum[];
};
/**
 * oauth_authorizations findFirstOrThrow
 */
export type oauth_authorizationsFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * Filter, which oauth_authorizations to fetch.
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of oauth_authorizations to fetch.
     */
    orderBy?: Prisma.oauth_authorizationsOrderByWithRelationInput | Prisma.oauth_authorizationsOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the position for searching for oauth_authorizations.
     */
    cursor?: Prisma.oauth_authorizationsWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` oauth_authorizations 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` oauth_authorizations.
     */
    skip?: number;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
     *
     * Filter by unique combinations of oauth_authorizations.
     */
    distinct?: Prisma.Oauth_authorizationsScalarFieldEnum | Prisma.Oauth_authorizationsScalarFieldEnum[];
};
/**
 * oauth_authorizations findMany
 */
export type oauth_authorizationsFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * Filter, which oauth_authorizations to fetch.
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
     *
     * Determine the order of oauth_authorizations to fetch.
     */
    orderBy?: Prisma.oauth_authorizationsOrderByWithRelationInput | Prisma.oauth_authorizationsOrderByWithRelationInput[];
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
     *
     * Sets the position for listing oauth_authorizations.
     */
    cursor?: Prisma.oauth_authorizationsWhereUniqueInput;
    /**
     * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
     *
     * Take `±n` oauth_authorizations 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` oauth_authorizations.
     */
    skip?: number;
    distinct?: Prisma.Oauth_authorizationsScalarFieldEnum | Prisma.Oauth_authorizationsScalarFieldEnum[];
};
/**
 * oauth_authorizations create
 */
export type oauth_authorizationsCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * The data needed to create a oauth_authorizations.
     */
    data: Prisma.XOR<Prisma.oauth_authorizationsCreateInput, Prisma.oauth_authorizationsUncheckedCreateInput>;
};
/**
 * oauth_authorizations createMany
 */
export type oauth_authorizationsCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * The data used to create many oauth_authorizations.
     */
    data: Prisma.oauth_authorizationsCreateManyInput | Prisma.oauth_authorizationsCreateManyInput[];
    skipDuplicates?: boolean;
};
/**
 * oauth_authorizations createManyAndReturn
 */
export type oauth_authorizationsCreateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelectCreateManyAndReturn<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * The data used to create many oauth_authorizations.
     */
    data: Prisma.oauth_authorizationsCreateManyInput | Prisma.oauth_authorizationsCreateManyInput[];
    skipDuplicates?: boolean;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsIncludeCreateManyAndReturn<ExtArgs> | null;
};
/**
 * oauth_authorizations update
 */
export type oauth_authorizationsUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * The data needed to update a oauth_authorizations.
     */
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateInput, Prisma.oauth_authorizationsUncheckedUpdateInput>;
    /**
     * Choose, which oauth_authorizations to update.
     */
    where: Prisma.oauth_authorizationsWhereUniqueInput;
};
/**
 * oauth_authorizations updateMany
 */
export type oauth_authorizationsUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * The data used to update oauth_authorizations.
     */
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateManyMutationInput, Prisma.oauth_authorizationsUncheckedUpdateManyInput>;
    /**
     * Filter which oauth_authorizations to update
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * Limit how many oauth_authorizations to update.
     */
    limit?: number;
};
/**
 * oauth_authorizations updateManyAndReturn
 */
export type oauth_authorizationsUpdateManyAndReturnArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelectUpdateManyAndReturn<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * The data used to update oauth_authorizations.
     */
    data: Prisma.XOR<Prisma.oauth_authorizationsUpdateManyMutationInput, Prisma.oauth_authorizationsUncheckedUpdateManyInput>;
    /**
     * Filter which oauth_authorizations to update
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * Limit how many oauth_authorizations to update.
     */
    limit?: number;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsIncludeUpdateManyAndReturn<ExtArgs> | null;
};
/**
 * oauth_authorizations upsert
 */
export type oauth_authorizationsUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * The filter to search for the oauth_authorizations to update in case it exists.
     */
    where: Prisma.oauth_authorizationsWhereUniqueInput;
    /**
     * In case the oauth_authorizations found by the `where` argument doesn't exist, create a new oauth_authorizations with this data.
     */
    create: Prisma.XOR<Prisma.oauth_authorizationsCreateInput, Prisma.oauth_authorizationsUncheckedCreateInput>;
    /**
     * In case the oauth_authorizations was found with the provided `where` argument, update it with this data.
     */
    update: Prisma.XOR<Prisma.oauth_authorizationsUpdateInput, Prisma.oauth_authorizationsUncheckedUpdateInput>;
};
/**
 * oauth_authorizations delete
 */
export type oauth_authorizationsDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
    /**
     * Filter which oauth_authorizations to delete.
     */
    where: Prisma.oauth_authorizationsWhereUniqueInput;
};
/**
 * oauth_authorizations deleteMany
 */
export type oauth_authorizationsDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Filter which oauth_authorizations to delete
     */
    where?: Prisma.oauth_authorizationsWhereInput;
    /**
     * Limit how many oauth_authorizations to delete.
     */
    limit?: number;
};
/**
 * oauth_authorizations.users
 */
export type oauth_authorizations$usersArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the users
     */
    select?: Prisma.usersSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the users
     */
    omit?: Prisma.usersOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.usersInclude<ExtArgs> | null;
    where?: Prisma.usersWhereInput;
};
/**
 * oauth_authorizations without action
 */
export type oauth_authorizationsDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
    /**
     * Select specific fields to fetch from the oauth_authorizations
     */
    select?: Prisma.oauth_authorizationsSelect<ExtArgs> | null;
    /**
     * Omit specific fields from the oauth_authorizations
     */
    omit?: Prisma.oauth_authorizationsOmit<ExtArgs> | null;
    /**
     * Choose, which related nodes to fetch as well
     */
    include?: Prisma.oauth_authorizationsInclude<ExtArgs> | null;
};
export {};
