/**
 * Entity types and filter types
 * @generated by @constructive-io/graphql-codegen
 * DO NOT EDIT - changes will be overwritten
 */
export type ConstructiveInternalTypeEmail = unknown;
export type ConstructiveInternalTypeImage = unknown;
export interface OrgGetManagersRecord {
    userId: string | null;
    depth: number | null;
}
export interface OrgGetSubordinatesRecord {
    userId: string | null;
    depth: number | null;
}
export interface AppPermission {
    id: string | null;
    name: string | null;
    bitnum: number | null;
    bitstr: string | null;
    description: string | null;
}
export interface OrgPermission {
    id: string | null;
    name: string | null;
    bitnum: number | null;
    bitstr: string | null;
    description: string | null;
}
export interface AppLevelRequirement {
    id: string | null;
    name: string | null;
    level: string | null;
    description: string | null;
    requiredCount: number | null;
    priority: number | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface OrgMember {
    id: string | null;
    isAdmin: boolean | null;
    actorId: string | null;
    entityId: string | null;
}
export interface AppPermissionDefault {
    id: string | null;
    permissions: string | null;
}
export interface OrgPermissionDefault {
    id: string | null;
    permissions: string | null;
    entityId: string | null;
}
export interface AppAdminGrant {
    id: string | null;
    isGrant: boolean | null;
    actorId: string | null;
    grantorId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AppOwnerGrant {
    id: string | null;
    isGrant: boolean | null;
    actorId: string | null;
    grantorId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AppAchievement {
    id: string | null;
    actorId: string | null;
    name: string | null;
    count: number | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AppStep {
    id: string | null;
    actorId: string | null;
    name: string | null;
    count: number | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface OrgAdminGrant {
    id: string | null;
    isGrant: boolean | null;
    actorId: string | null;
    entityId: string | null;
    grantorId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface OrgOwnerGrant {
    id: string | null;
    isGrant: boolean | null;
    actorId: string | null;
    entityId: string | null;
    grantorId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface MembershipType {
    id: number | null;
    name: string | null;
    description: string | null;
    prefix: string | null;
    parentMembershipType: number | null;
    hasUsersTableEntry: boolean | null;
}
export interface AppLimitDefault {
    id: string | null;
    name: string | null;
    max: string | null;
    softMax: string | null;
}
export interface OrgLimitDefault {
    id: string | null;
    name: string | null;
    max: string | null;
    softMax: string | null;
}
export interface OrgChartEdgeGrant {
    id: string | null;
    entityId: string | null;
    childId: string | null;
    parentId: string | null;
    grantorId: string | null;
    isGrant: boolean | null;
    positionTitle: string | null;
    positionLevel: number | null;
    createdAt: string | null;
}
export interface AppClaimedInvite {
    id: string | null;
    data: unknown | null;
    senderId: string | null;
    receiverId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AppGrant {
    id: string | null;
    permissions: string | null;
    isGrant: boolean | null;
    actorId: string | null;
    grantorId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AppMembershipDefault {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    createdBy: string | null;
    updatedBy: string | null;
    isApproved: boolean | null;
    isVerified: boolean | null;
}
export interface OrgMembershipDefault {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    createdBy: string | null;
    updatedBy: string | null;
    isApproved: boolean | null;
    entityId: string | null;
}
export interface OrgClaimedInvite {
    id: string | null;
    data: unknown | null;
    senderId: string | null;
    receiverId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    entityId: string | null;
}
export interface AppLimitEvent {
    name: string | null;
    actorId: string | null;
    entityId: string | null;
    eventType: string | null;
    delta: string | null;
    numBefore: string | null;
    numAfter: string | null;
    maxAtEvent: string | null;
    reason: string | null;
}
export interface OrgLimitEvent {
    name: string | null;
    actorId: string | null;
    entityId: string | null;
    eventType: string | null;
    delta: string | null;
    numBefore: string | null;
    numAfter: string | null;
    maxAtEvent: string | null;
    reason: string | null;
}
export interface OrgGrant {
    id: string | null;
    permissions: string | null;
    isGrant: boolean | null;
    actorId: string | null;
    entityId: string | null;
    grantorId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface OrgChartEdge {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    entityId: string | null;
    childId: string | null;
    parentId: string | null;
    positionTitle: string | null;
    positionLevel: number | null;
}
export interface AppLimit {
    id: string | null;
    name: string | null;
    actorId: string | null;
    num: string | null;
    max: string | null;
    softMax: string | null;
    windowStart: string | null;
    windowDuration: string | null;
}
export interface OrgLimitAggregate {
    id: string | null;
    name: string | null;
    entityId: string | null;
    num: string | null;
    max: string | null;
    softMax: string | null;
    windowStart: string | null;
    windowDuration: string | null;
}
export interface OrgMemberProfile {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    membershipId: string | null;
    entityId: string | null;
    actorId: string | null;
    displayName: string | null;
    email: string | null;
    title: string | null;
    bio: string | null;
    profilePicture: ConstructiveInternalTypeImage | null;
}
export interface OrgLimit {
    id: string | null;
    name: string | null;
    actorId: string | null;
    num: string | null;
    max: string | null;
    softMax: string | null;
    windowStart: string | null;
    windowDuration: string | null;
    entityId: string | null;
}
export interface AppLevel {
    id: string | null;
    name: string | null;
    description: string | null;
    image: ConstructiveInternalTypeImage | null;
    ownerId: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface AppInvite {
    id: string | null;
    email: ConstructiveInternalTypeEmail | null;
    senderId: string | null;
    inviteToken: string | null;
    inviteValid: boolean | null;
    inviteLimit: number | null;
    inviteCount: number | null;
    multiple: boolean | null;
    data: unknown | null;
    profileId: string | null;
    expiresAt: string | null;
    createdAt: string | null;
    updatedAt: string | null;
}
export interface OrgMembershipSetting {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    createdBy: string | null;
    updatedBy: string | null;
    entityId: string | null;
    deleteMemberCascadeChildren: boolean | null;
    createChildCascadeOwners: boolean | null;
    createChildCascadeAdmins: boolean | null;
    createChildCascadeMembers: boolean | null;
    allowExternalMembers: boolean | null;
    inviteProfileAssignmentMode: string | null;
    populateMemberEmail: boolean | null;
    limitAllocationMode: string | null;
}
export interface OrgInvite {
    id: string | null;
    email: ConstructiveInternalTypeEmail | null;
    senderId: string | null;
    receiverId: string | null;
    inviteToken: string | null;
    inviteValid: boolean | null;
    inviteLimit: number | null;
    inviteCount: number | null;
    multiple: boolean | null;
    data: unknown | null;
    profileId: string | null;
    expiresAt: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    entityId: string | null;
}
export interface AppMembership {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    createdBy: string | null;
    updatedBy: string | null;
    isApproved: boolean | null;
    isBanned: boolean | null;
    isDisabled: boolean | null;
    isVerified: boolean | null;
    isActive: boolean | null;
    isOwner: boolean | null;
    isAdmin: boolean | null;
    permissions: string | null;
    granted: string | null;
    actorId: string | null;
    profileId: string | null;
}
export interface OrgMembership {
    id: string | null;
    createdAt: string | null;
    updatedAt: string | null;
    createdBy: string | null;
    updatedBy: string | null;
    isApproved: boolean | null;
    isBanned: boolean | null;
    isDisabled: boolean | null;
    isActive: boolean | null;
    isExternal: boolean | null;
    isOwner: boolean | null;
    isAdmin: boolean | null;
    permissions: string | null;
    granted: string | null;
    actorId: string | null;
    entityId: string | null;
    isReadOnly: boolean | null;
    profileId: string | 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;
}
