/**
 * Entity types and filter types
 * @generated by @constructive-io/graphql-codegen
 * DO NOT EDIT - changes will be overwritten
 */
export type Base64EncodedBinary = unknown;
export type ConstructiveInternalTypeEmail = unknown;
export type ConstructiveInternalTypeImage = unknown;
export type ConstructiveInternalTypeOrigin = unknown;
export interface Email {
    id: string | null;
    ownerId: string | null;
    email: ConstructiveInternalTypeEmail | null;
    isVerified: boolean | null;
    isPrimary: boolean | null;
    name: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface PhoneNumber {
    id: string | null;
    ownerId: string | null;
    cc: string | null;
    number: string | null;
    isVerified: boolean | null;
    isPrimary: boolean | null;
    name: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface CryptoAddress {
    id: string | null;
    ownerId: string | null;
    address: string | null;
    isVerified: boolean | null;
    isPrimary: boolean | null;
    name: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface WebauthnCredential {
    id: string | null;
    ownerId: string | null;
    credentialId: string | null;
    publicKey: Base64EncodedBinary | null;
    signCount: string | null;
    webauthnUserId: string | null;
    transports: string[] | null;
    credentialDeviceType: string | null;
    backupEligible: boolean | null;
    backupState: boolean | null;
    name: string | null;
    lastUsedAt: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AuditLogAuth {
    createdAt: string | null;
    id: string | null;
    event: string | null;
    actorId: string | null;
    origin: ConstructiveInternalTypeOrigin | null;
    userAgent: string | null;
    ipAddress: string | null;
    success: boolean | null;
}
export interface IdentityProvider {
    slug: string | null;
    kind: string | null;
    displayName: string | null;
    enabled: boolean | null;
    isBuiltIn: boolean | null;
}
export interface RoleType {
    id: number | null;
    name: string | null;
}
export interface UserConnectedAccount {
    id: string | null;
    ownerId: string | null;
    service: string | null;
    identifier: string | null;
    details: unknown | null;
    isVerified: boolean | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface User {
    id: string | null;
    username: string | null;
    displayName: string | null;
    profilePicture: ConstructiveInternalTypeImage | null;
    searchTsv: string | null;
    type: number | null;
    createdAt: string | null;
    updatedAt: string | null;
    searchTsvRank: number | null;
    displayNameTrgmSimilarity: number | null;
    searchScore: number | null;
}
export interface StringFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
    lessThan?: string;
    lessThanOrEqualTo?: string;
    greaterThan?: string;
    greaterThanOrEqualTo?: string;
    includes?: string;
    notIncludes?: string;
    includesInsensitive?: string;
    notIncludesInsensitive?: string;
    startsWith?: string;
    notStartsWith?: string;
    startsWithInsensitive?: string;
    notStartsWithInsensitive?: string;
    endsWith?: string;
    notEndsWith?: string;
    endsWithInsensitive?: string;
    notEndsWithInsensitive?: string;
    like?: string;
    notLike?: string;
    likeInsensitive?: string;
    notLikeInsensitive?: string;
}
export interface IntFilter {
    isNull?: boolean;
    equalTo?: number;
    notEqualTo?: number;
    distinctFrom?: number;
    notDistinctFrom?: number;
    in?: number[];
    notIn?: number[];
    lessThan?: number;
    lessThanOrEqualTo?: number;
    greaterThan?: number;
    greaterThanOrEqualTo?: number;
}
export interface FloatFilter {
    isNull?: boolean;
    equalTo?: number;
    notEqualTo?: number;
    distinctFrom?: number;
    notDistinctFrom?: number;
    in?: number[];
    notIn?: number[];
    lessThan?: number;
    lessThanOrEqualTo?: number;
    greaterThan?: number;
    greaterThanOrEqualTo?: number;
}
export interface BooleanFilter {
    isNull?: boolean;
    equalTo?: boolean;
    notEqualTo?: boolean;
}
export interface UUIDFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
}
export interface DatetimeFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
    lessThan?: string;
    lessThanOrEqualTo?: string;
    greaterThan?: string;
    greaterThanOrEqualTo?: string;
}
export interface DateFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
    lessThan?: string;
    lessThanOrEqualTo?: string;
    greaterThan?: string;
    greaterThanOrEqualTo?: string;
}
export interface JSONFilter {
    isNull?: boolean;
    equalTo?: Record<string, unknown>;
    notEqualTo?: Record<string, unknown>;
    distinctFrom?: Record<string, unknown>;
    notDistinctFrom?: Record<string, unknown>;
    contains?: unknown;
    containedBy?: unknown;
    containsKey?: string;
    containsAllKeys?: string[];
    containsAnyKeys?: string[];
}
export interface BigIntFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
    lessThan?: string;
    lessThanOrEqualTo?: string;
    greaterThan?: string;
    greaterThanOrEqualTo?: string;
}
export interface BigFloatFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
    lessThan?: string;
    lessThanOrEqualTo?: string;
    greaterThan?: string;
    greaterThanOrEqualTo?: string;
}
export interface BitStringFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
}
export interface InternetAddressFilter {
    isNull?: boolean;
    equalTo?: string;
    notEqualTo?: string;
    distinctFrom?: string;
    notDistinctFrom?: string;
    in?: string[];
    notIn?: string[];
    lessThan?: string;
    lessThanOrEqualTo?: string;
    greaterThan?: string;
    greaterThanOrEqualTo?: string;
    contains?: string;
    containedBy?: string;
    containsOrContainedBy?: string;
}
export interface FullTextFilter {
    matches?: string;
}
export interface VectorFilter {
    isNull?: boolean;
    equalTo?: number[];
    notEqualTo?: number[];
    distinctFrom?: number[];
    notDistinctFrom?: number[];
}
export interface StringListFilter {
    isNull?: boolean;
    equalTo?: string[];
    notEqualTo?: string[];
    distinctFrom?: string[];
    notDistinctFrom?: string[];
    lessThan?: string[];
    lessThanOrEqualTo?: string[];
    greaterThan?: string[];
    greaterThanOrEqualTo?: string[];
    contains?: string[];
    containedBy?: string[];
    overlaps?: string[];
    anyEqualTo?: string;
    anyNotEqualTo?: string;
    anyLessThan?: string;
    anyLessThanOrEqualTo?: string;
    anyGreaterThan?: string;
    anyGreaterThanOrEqualTo?: string;
}
export interface IntListFilter {
    isNull?: boolean;
    equalTo?: number[];
    notEqualTo?: number[];
    distinctFrom?: number[];
    notDistinctFrom?: number[];
    lessThan?: number[];
    lessThanOrEqualTo?: number[];
    greaterThan?: number[];
    greaterThanOrEqualTo?: number[];
    contains?: number[];
    containedBy?: number[];
    overlaps?: number[];
    anyEqualTo?: number;
    anyNotEqualTo?: number;
    anyLessThan?: number;
    anyLessThanOrEqualTo?: number;
    anyGreaterThan?: number;
    anyGreaterThanOrEqualTo?: number;
}
export interface UUIDListFilter {
    isNull?: boolean;
    equalTo?: string[];
    notEqualTo?: string[];
    distinctFrom?: string[];
    notDistinctFrom?: string[];
    lessThan?: string[];
    lessThanOrEqualTo?: string[];
    greaterThan?: string[];
    greaterThanOrEqualTo?: string[];
    contains?: string[];
    containedBy?: string[];
    overlaps?: string[];
    anyEqualTo?: string;
    anyNotEqualTo?: string;
    anyLessThan?: string;
    anyLessThanOrEqualTo?: string;
    anyGreaterThan?: string;
    anyGreaterThanOrEqualTo?: string;
}
