Files
payloadcms/test/database/payload-types.ts
Sasha 9d6cae0445 feat: allow findDistinct on fields nested to relationships and on virtual fields (#14026)
This adds support for using `findDistinct`
https://github.com/payloadcms/payload/pull/13102 on fields:
* Nested to a relationship, for example `category.title`
* Virtual fields that are linked to relationships, for example
`categoryTitle`


```tsx
const Category: CollectionConfig = {
  slug: 'categories',
  fields: [
    {
      name: 'title',
      type: 'text',
    },
  ],
}

const Posts: CollectionConfig = {
  slug: 'posts',
  fields: [
    {
      name: 'category',
      type: 'relationship',
      relationTo: 'categories',
    },
    {
      name: 'categoryTitle',
      type: 'text',
      virtual: 'category.title',
    },
  ],
}

// Supported now
const relationResult = await payload.findDistinct({ collection: 'posts', field: 'category.title' })
// Supported now
const virtualResult = await payload.findDistinct({ collection: 'posts', field: 'categoryTitle' })
```
2025-10-02 05:36:30 +03:00

1479 lines
33 KiB
TypeScript

/* tslint:disable */
/* eslint-disable */
/**
* This file was automatically generated by Payload.
* DO NOT MODIFY IT BY HAND. Instead, modify your source Payload config,
* and re-run `payload generate:types` to regenerate this file.
*/
/**
* Supported timezones in IANA format.
*
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "supportedTimezones".
*/
export type SupportedTimezones =
| 'Pacific/Midway'
| 'Pacific/Niue'
| 'Pacific/Honolulu'
| 'Pacific/Rarotonga'
| 'America/Anchorage'
| 'Pacific/Gambier'
| 'America/Los_Angeles'
| 'America/Tijuana'
| 'America/Denver'
| 'America/Phoenix'
| 'America/Chicago'
| 'America/Guatemala'
| 'America/New_York'
| 'America/Bogota'
| 'America/Caracas'
| 'America/Santiago'
| 'America/Buenos_Aires'
| 'America/Sao_Paulo'
| 'Atlantic/South_Georgia'
| 'Atlantic/Azores'
| 'Atlantic/Cape_Verde'
| 'Europe/London'
| 'Europe/Berlin'
| 'Africa/Lagos'
| 'Europe/Athens'
| 'Africa/Cairo'
| 'Europe/Moscow'
| 'Asia/Riyadh'
| 'Asia/Dubai'
| 'Asia/Baku'
| 'Asia/Karachi'
| 'Asia/Tashkent'
| 'Asia/Calcutta'
| 'Asia/Dhaka'
| 'Asia/Almaty'
| 'Asia/Jakarta'
| 'Asia/Bangkok'
| 'Asia/Shanghai'
| 'Asia/Singapore'
| 'Asia/Tokyo'
| 'Asia/Seoul'
| 'Australia/Brisbane'
| 'Australia/Sydney'
| 'Pacific/Guam'
| 'Pacific/Noumea'
| 'Pacific/Auckland'
| 'Pacific/Fiji';
export interface Config {
auth: {
users: UserAuthOperations;
};
blocks: {};
collections: {
noTimeStamps: NoTimeStamp;
categories: Category;
simple: Simple;
'categories-custom-id': CategoriesCustomId;
posts: Post;
'error-on-unnamed-fields': ErrorOnUnnamedField;
'default-values': DefaultValue;
'relation-a': RelationA;
'relation-b': RelationB;
'pg-migrations': PgMigration;
'custom-schema': CustomSchema;
places: Place;
'virtual-relations': VirtualRelation;
'fields-persistance': FieldsPersistance;
'custom-ids': CustomId;
'fake-custom-ids': FakeCustomId;
'relationships-migration': RelationshipsMigration;
'compound-indexes': CompoundIndex;
aliases: Alias;
'blocks-docs': BlocksDoc;
'unique-fields': UniqueField;
users: User;
'payload-locked-documents': PayloadLockedDocument;
'payload-preferences': PayloadPreference;
'payload-migrations': PayloadMigration;
};
collectionsJoins: {};
collectionsSelect: {
noTimeStamps: NoTimeStampsSelect<false> | NoTimeStampsSelect<true>;
categories: CategoriesSelect<false> | CategoriesSelect<true>;
simple: SimpleSelect<false> | SimpleSelect<true>;
'categories-custom-id': CategoriesCustomIdSelect<false> | CategoriesCustomIdSelect<true>;
posts: PostsSelect<false> | PostsSelect<true>;
'error-on-unnamed-fields': ErrorOnUnnamedFieldsSelect<false> | ErrorOnUnnamedFieldsSelect<true>;
'default-values': DefaultValuesSelect<false> | DefaultValuesSelect<true>;
'relation-a': RelationASelect<false> | RelationASelect<true>;
'relation-b': RelationBSelect<false> | RelationBSelect<true>;
'pg-migrations': PgMigrationsSelect<false> | PgMigrationsSelect<true>;
'custom-schema': CustomSchemaSelect<false> | CustomSchemaSelect<true>;
places: PlacesSelect<false> | PlacesSelect<true>;
'virtual-relations': VirtualRelationsSelect<false> | VirtualRelationsSelect<true>;
'fields-persistance': FieldsPersistanceSelect<false> | FieldsPersistanceSelect<true>;
'custom-ids': CustomIdsSelect<false> | CustomIdsSelect<true>;
'fake-custom-ids': FakeCustomIdsSelect<false> | FakeCustomIdsSelect<true>;
'relationships-migration': RelationshipsMigrationSelect<false> | RelationshipsMigrationSelect<true>;
'compound-indexes': CompoundIndexesSelect<false> | CompoundIndexesSelect<true>;
aliases: AliasesSelect<false> | AliasesSelect<true>;
'blocks-docs': BlocksDocsSelect<false> | BlocksDocsSelect<true>;
'unique-fields': UniqueFieldsSelect<false> | UniqueFieldsSelect<true>;
users: UsersSelect<false> | UsersSelect<true>;
'payload-locked-documents': PayloadLockedDocumentsSelect<false> | PayloadLockedDocumentsSelect<true>;
'payload-preferences': PayloadPreferencesSelect<false> | PayloadPreferencesSelect<true>;
'payload-migrations': PayloadMigrationsSelect<false> | PayloadMigrationsSelect<true>;
};
db: {
defaultIDType: string;
};
globals: {
header: Header;
global: Global;
'global-2': Global2;
'global-3': Global3;
'virtual-relation-global': VirtualRelationGlobal;
};
globalsSelect: {
header: HeaderSelect<false> | HeaderSelect<true>;
global: GlobalSelect<false> | GlobalSelect<true>;
'global-2': Global2Select<false> | Global2Select<true>;
'global-3': Global3Select<false> | Global3Select<true>;
'virtual-relation-global': VirtualRelationGlobalSelect<false> | VirtualRelationGlobalSelect<true>;
};
locale: 'en' | 'es';
user: User & {
collection: 'users';
};
jobs: {
tasks: unknown;
workflows: unknown;
};
}
export interface UserAuthOperations {
forgotPassword: {
email: string;
password: string;
};
login: {
email: string;
password: string;
};
registerFirstUser: {
email: string;
password: string;
};
unlock: {
email: string;
password: string;
};
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "noTimeStamps".
*/
export interface NoTimeStamp {
id: string;
title?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "categories".
*/
export interface Category {
id: string;
title?: string | null;
hideout?: {
camera1?: {
time1Image?: (string | null) | Post;
};
};
updatedAt: string;
createdAt: string;
_status?: ('draft' | 'published') | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "posts".
*/
export interface Post {
id: string;
title: string;
category?: (string | null) | Category;
categoryTitle?: string | null;
categories?: (string | Category)[] | null;
categoryPoly?: {
relationTo: 'categories';
value: string | Category;
} | null;
categoryPolyMany?:
| {
relationTo: 'categories';
value: string | Category;
}[]
| null;
categoryCustomID?: (number | null) | CategoriesCustomId;
polymorphicRelations?:
| (
| {
relationTo: 'categories';
value: string | Category;
}
| {
relationTo: 'simple';
value: string | Simple;
}
)[]
| null;
localizedPolymorphicRelations?:
| (
| {
relationTo: 'categories';
value: string | Category;
}
| {
relationTo: 'simple';
value: string | Simple;
}
)[]
| null;
localized?: string | null;
text?: string | null;
number?: number | null;
blocks?:
| {
nested?:
| {
nested?: unknown[] | null;
id?: string | null;
blockName?: string | null;
blockType: 'block-fourth';
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'block-third';
}[]
| null;
testNestedGroup?: {
nestedLocalizedPolymorphicRelation?:
| (
| {
relationTo: 'categories';
value: string | Category;
}
| {
relationTo: 'simple';
value: string | Simple;
}
)[]
| null;
nestedLocalizedText?: string | null;
nestedText1?: string | null;
nestedText2?: string | null;
};
D1?: {
D2?: {
D3?: {
D4?: string | null;
};
};
};
hasTransaction?: boolean | null;
throwAfterChange?: boolean | null;
arrayWithIDs?:
| {
text?: string | null;
textLocalized?: string | null;
id?: string | null;
}[]
| null;
arrayWithIDsLocalized?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
blocksWithIDs?:
| {
text?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'block-first';
}[]
| null;
group?: {
text?: string | null;
};
tab?: {
text?: string | null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "categories-custom-id".
*/
export interface CategoriesCustomId {
id: number;
updatedAt: string;
createdAt: string;
_status?: ('draft' | 'published') | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "simple".
*/
export interface Simple {
id: string;
text?: string | null;
number?: number | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "error-on-unnamed-fields".
*/
export interface ErrorOnUnnamedField {
id: string;
groupWithinUnnamedTab: {
text: string;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "default-values".
*/
export interface DefaultValue {
id: string;
title?: string | null;
defaultValue?: string | null;
array?:
| {
defaultValue?: string | null;
id?: string | null;
}[]
| null;
group?: {
defaultValue?: string | null;
};
select?: ('option0' | 'option1' | 'default') | null;
/**
* @minItems 2
* @maxItems 2
*/
point?: [number, number] | null;
escape?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relation-a".
*/
export interface RelationA {
id: string;
title?: string | null;
richText?: {
root: {
type: string;
children: {
type: any;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relation-b".
*/
export interface RelationB {
id: string;
title?: string | null;
relationship?: (string | null) | RelationA;
richText?: {
root: {
type: string;
children: {
type: any;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "pg-migrations".
*/
export interface PgMigration {
id: string;
relation1?: (string | null) | RelationA;
myArray?:
| {
relation2?: (string | null) | RelationB;
mySubArray?:
| {
relation3?: (string | null) | RelationB;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
myGroup?: {
relation4?: (string | null) | RelationB;
};
myBlocks?:
| {
relation5?: (string | null) | RelationA;
relation6?: (string | null) | RelationB;
id?: string | null;
blockName?: string | null;
blockType: 'myBlock';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "custom-schema".
*/
export interface CustomSchema {
id: string;
text?: string | null;
localizedText?: string | null;
relationship?: (string | RelationA)[] | null;
select?: ('a' | 'b' | 'c')[] | null;
radio?: ('a' | 'b' | 'c') | null;
array?:
| {
text?: string | null;
localizedText?: string | null;
id?: string | null;
}[]
| null;
blocks?:
| {
text?: string | null;
localizedText?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'block-second';
}[]
| null;
updatedAt: string;
createdAt: string;
_status?: ('draft' | 'published') | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "places".
*/
export interface Place {
id: string;
country?: string | null;
city?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "virtual-relations".
*/
export interface VirtualRelation {
id: string;
postTitle?: string | null;
postsTitles?: string[] | null;
postCategoriesTitles?: string[] | null;
postTitleHidden?: string | null;
postCategoryTitle?: string | null;
postCategoryID?:
| {
[k: string]: unknown;
}
| unknown[]
| string
| number
| boolean
| null;
postCategoryCustomID?: number | null;
postID?:
| {
[k: string]: unknown;
}
| unknown[]
| string
| number
| boolean
| null;
postLocalized?: string | null;
post?: (string | null) | Post;
posts?: (string | Post)[] | null;
customID?: (string | null) | CustomId;
customIDValue?: string | null;
updatedAt: string;
createdAt: string;
_status?: ('draft' | 'published') | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "custom-ids".
*/
export interface CustomId {
id: string;
title?: string | null;
updatedAt: string;
createdAt: string;
_status?: ('draft' | 'published') | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "fields-persistance".
*/
export interface FieldsPersistance {
id: string;
text?: string | null;
textHooked?: string | null;
array?:
| {
id?: string | null;
}[]
| null;
textWithinRow?: string | null;
textWithinCollapsible?: string | null;
textWithinTabs?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "fake-custom-ids".
*/
export interface FakeCustomId {
id: string;
title?: string | null;
group?: {
id?: string | null;
};
myTab?: {
id?: string | null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relationships-migration".
*/
export interface RelationshipsMigration {
id: string;
relationship?: (string | null) | DefaultValue;
relationship_2?: {
relationTo: 'default-values';
value: string | DefaultValue;
} | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "compound-indexes".
*/
export interface CompoundIndex {
id: string;
one?: string | null;
two?: string | null;
three?: string | null;
group?: {
four?: string | null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "aliases".
*/
export interface Alias {
id: string;
thisIsALongFieldNameThatCanCauseAPostgresErrorEvenThoughWeSetAShorterDBName?:
| {
nestedArray?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "blocks-docs".
*/
export interface BlocksDoc {
id: string;
testBlocksLocalized?:
| {
text?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'cta';
}[]
| null;
testBlocks?:
| {
text?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'cta';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "unique-fields".
*/
export interface UniqueField {
id: string;
slugField?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "users".
*/
export interface User {
id: string;
updatedAt: string;
createdAt: string;
email: string;
resetPasswordToken?: string | null;
resetPasswordExpiration?: string | null;
salt?: string | null;
hash?: string | null;
loginAttempts?: number | null;
lockUntil?: string | null;
sessions?:
| {
id: string;
createdAt?: string | null;
expiresAt: string;
}[]
| null;
password?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-locked-documents".
*/
export interface PayloadLockedDocument {
id: string;
document?:
| ({
relationTo: 'noTimeStamps';
value: string | NoTimeStamp;
} | null)
| ({
relationTo: 'categories';
value: string | Category;
} | null)
| ({
relationTo: 'simple';
value: string | Simple;
} | null)
| ({
relationTo: 'categories-custom-id';
value: number | CategoriesCustomId;
} | null)
| ({
relationTo: 'posts';
value: string | Post;
} | null)
| ({
relationTo: 'error-on-unnamed-fields';
value: string | ErrorOnUnnamedField;
} | null)
| ({
relationTo: 'default-values';
value: string | DefaultValue;
} | null)
| ({
relationTo: 'relation-a';
value: string | RelationA;
} | null)
| ({
relationTo: 'relation-b';
value: string | RelationB;
} | null)
| ({
relationTo: 'pg-migrations';
value: string | PgMigration;
} | null)
| ({
relationTo: 'custom-schema';
value: string | CustomSchema;
} | null)
| ({
relationTo: 'places';
value: string | Place;
} | null)
| ({
relationTo: 'virtual-relations';
value: string | VirtualRelation;
} | null)
| ({
relationTo: 'fields-persistance';
value: string | FieldsPersistance;
} | null)
| ({
relationTo: 'custom-ids';
value: string | CustomId;
} | null)
| ({
relationTo: 'fake-custom-ids';
value: string | FakeCustomId;
} | null)
| ({
relationTo: 'relationships-migration';
value: string | RelationshipsMigration;
} | null)
| ({
relationTo: 'compound-indexes';
value: string | CompoundIndex;
} | null)
| ({
relationTo: 'aliases';
value: string | Alias;
} | null)
| ({
relationTo: 'blocks-docs';
value: string | BlocksDoc;
} | null)
| ({
relationTo: 'unique-fields';
value: string | UniqueField;
} | null)
| ({
relationTo: 'users';
value: string | User;
} | null);
globalSlug?: string | null;
user: {
relationTo: 'users';
value: string | User;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-preferences".
*/
export interface PayloadPreference {
id: string;
user: {
relationTo: 'users';
value: string | User;
};
key?: string | null;
value?:
| {
[k: string]: unknown;
}
| unknown[]
| string
| number
| boolean
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-migrations".
*/
export interface PayloadMigration {
id: string;
name?: string | null;
batch?: number | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "noTimeStamps_select".
*/
export interface NoTimeStampsSelect<T extends boolean = true> {
title?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "categories_select".
*/
export interface CategoriesSelect<T extends boolean = true> {
title?: T;
hideout?:
| T
| {
camera1?:
| T
| {
time1Image?: T;
};
};
updatedAt?: T;
createdAt?: T;
_status?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "simple_select".
*/
export interface SimpleSelect<T extends boolean = true> {
text?: T;
number?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "categories-custom-id_select".
*/
export interface CategoriesCustomIdSelect<T extends boolean = true> {
id?: T;
updatedAt?: T;
createdAt?: T;
_status?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "posts_select".
*/
export interface PostsSelect<T extends boolean = true> {
title?: T;
category?: T;
categoryTitle?: T;
categories?: T;
categoryPoly?: T;
categoryPolyMany?: T;
categoryCustomID?: T;
polymorphicRelations?: T;
localizedPolymorphicRelations?: T;
localized?: T;
text?: T;
number?: T;
blocks?:
| T
| {
'block-third'?:
| T
| {
nested?:
| T
| {
'block-fourth'?:
| T
| {
nested?: T | {};
id?: T;
blockName?: T;
};
};
id?: T;
blockName?: T;
};
};
testNestedGroup?:
| T
| {
nestedLocalizedPolymorphicRelation?: T;
nestedLocalizedText?: T;
nestedText1?: T;
nestedText2?: T;
};
D1?:
| T
| {
D2?:
| T
| {
D3?:
| T
| {
D4?: T;
};
};
};
hasTransaction?: T;
throwAfterChange?: T;
arrayWithIDs?:
| T
| {
text?: T;
textLocalized?: T;
id?: T;
};
arrayWithIDsLocalized?:
| T
| {
text?: T;
id?: T;
};
blocksWithIDs?:
| T
| {
'block-first'?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
};
group?:
| T
| {
text?: T;
};
tab?:
| T
| {
text?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "error-on-unnamed-fields_select".
*/
export interface ErrorOnUnnamedFieldsSelect<T extends boolean = true> {
groupWithinUnnamedTab?:
| T
| {
text?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "default-values_select".
*/
export interface DefaultValuesSelect<T extends boolean = true> {
title?: T;
defaultValue?: T;
array?:
| T
| {
defaultValue?: T;
id?: T;
};
group?:
| T
| {
defaultValue?: T;
};
select?: T;
point?: T;
escape?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relation-a_select".
*/
export interface RelationASelect<T extends boolean = true> {
title?: T;
richText?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relation-b_select".
*/
export interface RelationBSelect<T extends boolean = true> {
title?: T;
relationship?: T;
richText?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "pg-migrations_select".
*/
export interface PgMigrationsSelect<T extends boolean = true> {
relation1?: T;
myArray?:
| T
| {
relation2?: T;
mySubArray?:
| T
| {
relation3?: T;
id?: T;
};
id?: T;
};
myGroup?:
| T
| {
relation4?: T;
};
myBlocks?:
| T
| {
myBlock?:
| T
| {
relation5?: T;
relation6?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "custom-schema_select".
*/
export interface CustomSchemaSelect<T extends boolean = true> {
text?: T;
localizedText?: T;
relationship?: T;
select?: T;
radio?: T;
array?:
| T
| {
text?: T;
localizedText?: T;
id?: T;
};
blocks?:
| T
| {
'block-second'?:
| T
| {
text?: T;
localizedText?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
_status?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "places_select".
*/
export interface PlacesSelect<T extends boolean = true> {
country?: T;
city?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "virtual-relations_select".
*/
export interface VirtualRelationsSelect<T extends boolean = true> {
postTitle?: T;
postsTitles?: T;
postCategoriesTitles?: T;
postTitleHidden?: T;
postCategoryTitle?: T;
postCategoryID?: T;
postCategoryCustomID?: T;
postID?: T;
postLocalized?: T;
post?: T;
posts?: T;
customID?: T;
customIDValue?: T;
updatedAt?: T;
createdAt?: T;
_status?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "fields-persistance_select".
*/
export interface FieldsPersistanceSelect<T extends boolean = true> {
text?: T;
textHooked?: T;
array?:
| T
| {
id?: T;
};
textWithinRow?: T;
textWithinCollapsible?: T;
textWithinTabs?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "custom-ids_select".
*/
export interface CustomIdsSelect<T extends boolean = true> {
id?: T;
title?: T;
updatedAt?: T;
createdAt?: T;
_status?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "fake-custom-ids_select".
*/
export interface FakeCustomIdsSelect<T extends boolean = true> {
title?: T;
group?:
| T
| {
id?: T;
};
myTab?:
| T
| {
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relationships-migration_select".
*/
export interface RelationshipsMigrationSelect<T extends boolean = true> {
relationship?: T;
relationship_2?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "compound-indexes_select".
*/
export interface CompoundIndexesSelect<T extends boolean = true> {
one?: T;
two?: T;
three?: T;
group?:
| T
| {
four?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "aliases_select".
*/
export interface AliasesSelect<T extends boolean = true> {
thisIsALongFieldNameThatCanCauseAPostgresErrorEvenThoughWeSetAShorterDBName?:
| T
| {
nestedArray?:
| T
| {
text?: T;
id?: T;
};
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "blocks-docs_select".
*/
export interface BlocksDocsSelect<T extends boolean = true> {
testBlocksLocalized?:
| T
| {
cta?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
};
testBlocks?:
| T
| {
cta?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "unique-fields_select".
*/
export interface UniqueFieldsSelect<T extends boolean = true> {
slugField?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "users_select".
*/
export interface UsersSelect<T extends boolean = true> {
updatedAt?: T;
createdAt?: T;
email?: T;
resetPasswordToken?: T;
resetPasswordExpiration?: T;
salt?: T;
hash?: T;
loginAttempts?: T;
lockUntil?: T;
sessions?:
| T
| {
id?: T;
createdAt?: T;
expiresAt?: T;
};
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-locked-documents_select".
*/
export interface PayloadLockedDocumentsSelect<T extends boolean = true> {
document?: T;
globalSlug?: T;
user?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-preferences_select".
*/
export interface PayloadPreferencesSelect<T extends boolean = true> {
user?: T;
key?: T;
value?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-migrations_select".
*/
export interface PayloadMigrationsSelect<T extends boolean = true> {
name?: T;
batch?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "header".
*/
export interface Header {
id: string;
itemsLvl1?:
| {
label?: string | null;
itemsLvl2?:
| {
label?: string | null;
itemsLvl3?:
| {
label?: string | null;
itemsLvl4?:
| {
label?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
updatedAt?: string | null;
createdAt?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "global".
*/
export interface Global {
id: string;
text?: string | null;
updatedAt?: string | null;
createdAt?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "global-2".
*/
export interface Global2 {
id: string;
text?: string | null;
updatedAt?: string | null;
createdAt?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "global-3".
*/
export interface Global3 {
id: string;
text?: string | null;
updatedAt?: string | null;
createdAt?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "virtual-relation-global".
*/
export interface VirtualRelationGlobal {
id: string;
postTitle?: string | null;
post?: (string | null) | Post;
updatedAt?: string | null;
createdAt?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "header_select".
*/
export interface HeaderSelect<T extends boolean = true> {
itemsLvl1?:
| T
| {
label?: T;
itemsLvl2?:
| T
| {
label?: T;
itemsLvl3?:
| T
| {
label?: T;
itemsLvl4?:
| T
| {
label?: T;
id?: T;
};
id?: T;
};
id?: T;
};
id?: T;
};
updatedAt?: T;
createdAt?: T;
globalType?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "global_select".
*/
export interface GlobalSelect<T extends boolean = true> {
text?: T;
updatedAt?: T;
createdAt?: T;
globalType?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "global-2_select".
*/
export interface Global2Select<T extends boolean = true> {
text?: T;
updatedAt?: T;
createdAt?: T;
globalType?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "global-3_select".
*/
export interface Global3Select<T extends boolean = true> {
text?: T;
updatedAt?: T;
createdAt?: T;
globalType?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "virtual-relation-global_select".
*/
export interface VirtualRelationGlobalSelect<T extends boolean = true> {
postTitle?: T;
post?: T;
updatedAt?: T;
createdAt?: T;
globalType?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "auth".
*/
export interface Auth {
[k: string]: unknown;
}
declare module 'payload' {
// @ts-ignore
export interface GeneratedTypes extends Config {}
}