Files
payloadcms/test/fields/payload-types.ts
Sasha 26a10ed071 perf: reduce generated types for select by respecting interfaceName (#9870)
This PR can significantly reduce your `payload-types.ts` file if you
have sharable fields / blocks that use the `interfaceName` property.
Previously we didn't respect it for select types.

Before:
```ts
export interface Collection1Select<T extends boolean = true> {
  testing?: T;
  title?: T;
  meta?:
    | T
    | {
        title?: T;
        description?: T;
        id?: T;
      };
  blocks?:
    | T
    | {
        block1?:
          | T
          | {
              b1title?: T;
              b1description?: T;
              id?: T;
              blockName?: T;
            };
        block2?:
          | T
          | {
              b2title?: T;
              b2description?: T;
              id?: T;
              blockName?: T;
            };
      };
  updatedAt?: T;
  createdAt?: T;
}
```
After:
```ts
export interface Collection1Select<T extends boolean = true> {
  testing?: T;
  title?: T;
  meta?: T | SharedMetaArraySelect<T>;
  blocks?:
    | T
    | {
        block1?: T | SharedMetaBlockSelect<T>;
        block2?: T | AnotherSharedBlockSelect<T>;
      };
  updatedAt?: T;
  createdAt?: T;
}

/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "SharedMetaArray_select".
 */
export interface SharedMetaArraySelect<T extends boolean = true> {
  title?: T;
  description?: T;
  id?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "SharedMetaBlock_select".
 */
export interface SharedMetaBlockSelect<T extends boolean = true> {
  b1title?: T;
  b1description?: T;
  id?: T;
  blockName?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "AnotherSharedBlock_select".
 */
export interface AnotherSharedBlockSelect<T extends boolean = true> {
  b2title?: T;
  b2description?: T;
  id?: T;
  blockName?: T;
}
```

Regenerated all the types in `/test`. The diff is noticeable for
`fields` -
https://github.com/payloadcms/payload/pull/9870/files#diff-95beaac24c72c7bd60933e325cdcd94a4c3630a1ce22fabad624ec80cc74fc8c
2024-12-16 17:22:17 +02:00

3245 lines
74 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.
*/
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "BlockColumns".
*/
export type BlockColumns =
| {
text?: string | null;
subArray?:
| {
requiredText: string;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
export interface Config {
auth: {
users: UserAuthOperations;
};
collections: {
'lexical-fields': LexicalField;
'lexical-migrate-fields': LexicalMigrateField;
'lexical-localized-fields': LexicalLocalizedField;
lexicalObjectReferenceBug: LexicalObjectReferenceBug;
users: User;
LexicalInBlock: LexicalInBlock;
'array-fields': ArrayField;
'block-fields': BlockField;
'checkbox-fields': CheckboxField;
'code-fields': CodeField;
'collapsible-fields': CollapsibleField;
'conditional-logic': ConditionalLogic;
'custom-id': CustomId;
'date-fields': DateField;
'email-fields': EmailField;
'radio-fields': RadioField;
'group-fields': GroupField;
'row-fields': RowField;
'indexed-fields': IndexedField;
'json-fields': JsonField;
'number-fields': NumberField;
'point-fields': PointField;
'relationship-fields': RelationshipField;
'lexical-relationship-fields': LexicalRelationshipField;
'rich-text-fields': RichTextField;
'select-fields': SelectField;
'tabs-fields-2': TabsFields2;
'tabs-fields': TabsField;
'text-fields': TextField;
uploads: Upload;
uploads2: Uploads2;
uploads3: Uploads3;
'uploads-multi': UploadsMulti;
'uploads-poly': UploadsPoly;
'uploads-multi-poly': UploadsMultiPoly;
'uploads-restricted': UploadsRestricted;
'ui-fields': UiField;
'payload-locked-documents': PayloadLockedDocument;
'payload-preferences': PayloadPreference;
'payload-migrations': PayloadMigration;
};
collectionsJoins: {};
collectionsSelect: {
'lexical-fields': LexicalFieldsSelect<false> | LexicalFieldsSelect<true>;
'lexical-migrate-fields': LexicalMigrateFieldsSelect<false> | LexicalMigrateFieldsSelect<true>;
'lexical-localized-fields': LexicalLocalizedFieldsSelect<false> | LexicalLocalizedFieldsSelect<true>;
lexicalObjectReferenceBug: LexicalObjectReferenceBugSelect<false> | LexicalObjectReferenceBugSelect<true>;
users: UsersSelect<false> | UsersSelect<true>;
LexicalInBlock: LexicalInBlockSelect<false> | LexicalInBlockSelect<true>;
'array-fields': ArrayFieldsSelect<false> | ArrayFieldsSelect<true>;
'block-fields': BlockFieldsSelect<false> | BlockFieldsSelect<true>;
'checkbox-fields': CheckboxFieldsSelect<false> | CheckboxFieldsSelect<true>;
'code-fields': CodeFieldsSelect<false> | CodeFieldsSelect<true>;
'collapsible-fields': CollapsibleFieldsSelect<false> | CollapsibleFieldsSelect<true>;
'conditional-logic': ConditionalLogicSelect<false> | ConditionalLogicSelect<true>;
'custom-id': CustomIdSelect<false> | CustomIdSelect<true>;
'date-fields': DateFieldsSelect<false> | DateFieldsSelect<true>;
'email-fields': EmailFieldsSelect<false> | EmailFieldsSelect<true>;
'radio-fields': RadioFieldsSelect<false> | RadioFieldsSelect<true>;
'group-fields': GroupFieldsSelect<false> | GroupFieldsSelect<true>;
'row-fields': RowFieldsSelect<false> | RowFieldsSelect<true>;
'indexed-fields': IndexedFieldsSelect<false> | IndexedFieldsSelect<true>;
'json-fields': JsonFieldsSelect<false> | JsonFieldsSelect<true>;
'number-fields': NumberFieldsSelect<false> | NumberFieldsSelect<true>;
'point-fields': PointFieldsSelect<false> | PointFieldsSelect<true>;
'relationship-fields': RelationshipFieldsSelect<false> | RelationshipFieldsSelect<true>;
'lexical-relationship-fields': LexicalRelationshipFieldsSelect<false> | LexicalRelationshipFieldsSelect<true>;
'rich-text-fields': RichTextFieldsSelect<false> | RichTextFieldsSelect<true>;
'select-fields': SelectFieldsSelect<false> | SelectFieldsSelect<true>;
'tabs-fields-2': TabsFields2Select<false> | TabsFields2Select<true>;
'tabs-fields': TabsFieldsSelect<false> | TabsFieldsSelect<true>;
'text-fields': TextFieldsSelect<false> | TextFieldsSelect<true>;
uploads: UploadsSelect<false> | UploadsSelect<true>;
uploads2: Uploads2Select<false> | Uploads2Select<true>;
uploads3: Uploads3Select<false> | Uploads3Select<true>;
'uploads-multi': UploadsMultiSelect<false> | UploadsMultiSelect<true>;
'uploads-poly': UploadsPolySelect<false> | UploadsPolySelect<true>;
'uploads-multi-poly': UploadsMultiPolySelect<false> | UploadsMultiPolySelect<true>;
'uploads-restricted': UploadsRestrictedSelect<false> | UploadsRestrictedSelect<true>;
'ui-fields': UiFieldsSelect<false> | UiFieldsSelect<true>;
'payload-locked-documents': PayloadLockedDocumentsSelect<false> | PayloadLockedDocumentsSelect<true>;
'payload-preferences': PayloadPreferencesSelect<false> | PayloadPreferencesSelect<true>;
'payload-migrations': PayloadMigrationsSelect<false> | PayloadMigrationsSelect<true>;
};
db: {
defaultIDType: string;
};
globals: {
tabsWithRichText: TabsWithRichText;
};
globalsSelect: {
tabsWithRichText: TabsWithRichTextSelect<false> | TabsWithRichTextSelect<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` "lexical-fields".
*/
export interface LexicalField {
id: string;
title: string;
lexicalRootEditor?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalSimple?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalWithBlocks: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
};
lexicalWithBlocks_markdown?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexical-migrate-fields".
*/
export interface LexicalMigrateField {
id: string;
title: string;
lexicalWithLexicalPluginData?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalWithSlateData?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalSimple?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalSimple_html?: string | null;
groupWithLexicalField?: {
lexicalInGroupField?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalInGroupField_html?: string | null;
};
arrayWithLexicalField?:
| {
lexicalInArrayField?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalInArrayField_html?: string | null;
id?: string | null;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexical-localized-fields".
*/
export interface LexicalLocalizedField {
id: string;
title: string;
lexicalBlocksSubLocalized?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalBlocksLocalized?: {
root: {
type: string;
children: {
type: string;
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` "lexicalObjectReferenceBug".
*/
export interface LexicalObjectReferenceBug {
id: string;
lexicalDefault?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
lexicalEditor?: {
root: {
type: string;
children: {
type: string;
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` "users".
*/
export interface User {
id: string;
canViewConditionalField?: boolean | null;
updatedAt: string;
createdAt: string;
email: string;
resetPasswordToken?: string | null;
resetPasswordExpiration?: string | null;
salt?: string | null;
hash?: string | null;
loginAttempts?: number | null;
lockUntil?: string | null;
password?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "LexicalInBlock".
*/
export interface LexicalInBlock {
id: string;
blocks?:
| {
lexical?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
id?: string | null;
blockName?: string | null;
blockType: 'lexicalInBlock2';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "array-fields".
*/
export interface ArrayField {
id: string;
title?: string | null;
items: {
text: string;
anotherText?: string | null;
localizedText?: string | null;
subArray?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
}[];
collapsedArray?:
| {
text: string;
id?: string | null;
}[]
| null;
localized: {
text: string;
id?: string | null;
}[];
readOnly?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
potentiallyEmptyArray?:
| {
text?: string | null;
groupInRow?: {
textInGroupInRow?: string | null;
};
id?: string | null;
}[]
| null;
rowLabelAsComponent?:
| {
title?: string | null;
id?: string | null;
}[]
| null;
arrayWithMinRows?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
disableSort?:
| {
text: string;
id?: string | null;
}[]
| null;
nestedArrayLocalized?:
| {
array?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
externallyUpdatedArray?:
| {
id?: string | null;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "block-fields".
*/
export interface BlockField {
id: string;
blocks: (ContentBlock | NumberBlock | SubBlocksBlock | TabsBlock)[];
duplicate: (ContentBlock | NumberBlock | SubBlocksBlock | TabsBlock)[];
collapsedByDefaultBlocks: (
| LocalizedContentBlock
| LocalizedNumberBlock
| LocalizedSubBlocksBlock
| LocalizedTabsBlock
)[];
disableSort: (LocalizedContentBlock | LocalizedNumberBlock | LocalizedSubBlocksBlock | LocalizedTabsBlock)[];
localizedBlocks: (LocalizedContentBlock | LocalizedNumberBlock | LocalizedSubBlocksBlock | LocalizedTabsBlock)[];
i18nBlocks?:
| {
text?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'text';
}[]
| null;
blocksWithLocalizedArray?:
| {
array?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'localizedArray';
}[]
| null;
blocksWithSimilarConfigs?:
| (
| {
items?:
| {
title: string;
id?: string | null;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'block-a';
}
| {
items?:
| {
title2: string;
id?: string | null;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'block-b';
}
| {
group?: {
text?: string | null;
};
id?: string | null;
blockName?: string | null;
blockType: 'group-block';
}
)[]
| null;
blocksWithSimilarGroup?:
| (
| {
group?: {
text?: string | null;
};
id?: string | null;
blockName?: string | null;
blockType: 'group-block';
}
| {
items?:
| {
title2: string;
id?: string | null;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'block-b';
}
)[]
| null;
blocksWithMinRows?:
| {
blockTitle?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'block';
}[]
| null;
customBlocks?:
| (
| {
block1Title?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'block-1';
}
| {
block2Title?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'block-2';
}
)[]
| null;
relationshipBlocks?:
| {
relationship?: (string | null) | TextField;
id?: string | null;
blockName?: string | null;
blockType: 'relationships';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "ContentBlock".
*/
export interface ContentBlock {
text: string;
richText?:
| {
[k: string]: unknown;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'content';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "NumberBlock".
*/
export interface NumberBlock {
number: number;
id?: string | null;
blockName?: string | null;
blockType: 'number';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "SubBlocksBlock".
*/
export interface SubBlocksBlock {
subBlocks?:
| (
| {
text: string;
id?: string | null;
blockName?: string | null;
blockType: 'text';
}
| {
number: number;
id?: string | null;
blockName?: string | null;
blockType: 'number';
}
)[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'subBlocks';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "TabsBlock".
*/
export interface TabsBlock {
textInCollapsible?: string | null;
textInRow?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'tabs';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedContentBlock".
*/
export interface LocalizedContentBlock {
text: string;
richText?:
| {
[k: string]: unknown;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'localizedContent';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedNumberBlock".
*/
export interface LocalizedNumberBlock {
number: number;
id?: string | null;
blockName?: string | null;
blockType: 'localizedNumber';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedSubBlocksBlock".
*/
export interface LocalizedSubBlocksBlock {
subBlocks?:
| (
| {
text: string;
id?: string | null;
blockName?: string | null;
blockType: 'text';
}
| {
number: number;
id?: string | null;
blockName?: string | null;
blockType: 'number';
}
)[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'localizedSubBlocks';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedTabsBlock".
*/
export interface LocalizedTabsBlock {
textInCollapsible?: string | null;
textInRow?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'localizedTabs';
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "text-fields".
*/
export interface TextField {
id: string;
text: string;
hiddenTextField?: string | null;
adminHiddenTextField?: string | null;
disabledTextField?: string | null;
localizedText?: string | null;
i18nText?: string | null;
defaultString?: string | null;
defaultEmptyString?: string | null;
defaultFunction?: string | null;
defaultAsync?: string | null;
overrideLength?: string | null;
fieldWithDefaultValue?: string | null;
dependentOnFieldWithDefaultValue?: string | null;
hasMany?: string[] | null;
validatesHasMany?: string[] | null;
localizedHasMany?: string[] | null;
withMinRows?: string[] | null;
withMaxRows?: string[] | null;
disableListColumnText?: string | null;
disableListFilterText?: string | null;
array?:
| {
texts?: string[] | null;
id?: string | null;
}[]
| null;
blocks?:
| {
texts?: string[] | null;
id?: string | null;
blockName?: string | null;
blockType: 'block';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "checkbox-fields".
*/
export interface CheckboxField {
id: string;
checkbox: boolean;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "code-fields".
*/
export interface CodeField {
id: string;
javascript?: string | null;
typescript?: string | null;
json?: string | null;
html?: string | null;
css?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "collapsible-fields".
*/
export interface CollapsibleField {
id: string;
text: string;
group?: {
textWithinGroup?: string | null;
subGroup?: {
textWithinSubGroup?: string | null;
};
};
someText?: string | null;
group2?: {
textWithinGroup?: string | null;
subGroup?: {
textWithinSubGroup?: string | null;
};
};
functionTitleField?: string | null;
componentTitleField?: string | null;
nestedTitle?: string | null;
arrayWithCollapsibles?:
| {
innerCollapsible?: string | null;
id?: string | null;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "conditional-logic".
*/
export interface ConditionalLogic {
id: string;
text: string;
toggleField?: boolean | null;
fieldWithCondition?: string | null;
userConditional?: string | null;
parentGroup?: {
enableParentGroupFields?: boolean | null;
siblingField?: string | null;
};
reliesOnParentGroup?: string | null;
groupSelection?: ('group1' | 'group2') | null;
group1?: {
group1Field?: string | null;
};
group2?: {
group2Field?: string | null;
};
enableConditionalFields?: boolean | null;
arrayWithConditionalField?:
| {
text?: string | null;
textWithCondition?: string | null;
id?: string | null;
}[]
| null;
blocksWithConditionalField?:
| {
text?: string | null;
textWithCondition?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'blockWithConditionalField';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "custom-id".
*/
export interface CustomId {
id: string;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "date-fields".
*/
export interface DateField {
id: string;
default: string;
timeOnly?: string | null;
timeOnlyWithCustomFormat?: string | null;
dayOnly?: string | null;
dayAndTime?: string | null;
monthOnly?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "email-fields".
*/
export interface EmailField {
id: string;
email: string;
localizedEmail?: string | null;
emailWithAutocomplete?: string | null;
i18nEmail?: string | null;
defaultEmail?: string | null;
defaultEmptyString?: string | null;
defaultFunction?: string | null;
defaultAsync?: string | null;
customLabel?: string | null;
customError?: string | null;
beforeAndAfterInput?: string | null;
disableListColumnText?: string | null;
disableListFilterText?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "radio-fields".
*/
export interface RadioField {
id: string;
radio?: ('one' | 'two' | 'three') | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "group-fields".
*/
export interface GroupField {
id: string;
group: {
text: string;
defaultParent?: string | null;
defaultChild?: string | null;
subGroup?: {
textWithinGroup?: string | null;
arrayWithinGroup?:
| {
textWithinArray?: string | null;
id?: string | null;
}[]
| null;
};
};
arrayOfGroups?:
| {
groupItem?: {
text?: string | null;
};
id?: string | null;
}[]
| null;
localizedGroup?: {
text?: string | null;
};
potentiallyEmptyGroup?: {
text?: string | null;
};
groupInRow?: {
field?: string | null;
secondField?: string | null;
thirdField?: string | null;
};
secondGroupInRow?: {
field?: string | null;
nestedGroup?: {
nestedField?: string | null;
};
};
groups?: {
groupInRow?: {
field?: string | null;
secondField?: string | null;
thirdField?: string | null;
};
secondGroupInRow?: {
field?: string | null;
nestedGroup?: {
nestedField?: string | null;
};
};
};
camelCaseGroup?: {
array?:
| {
text?: string | null;
array?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
};
localizedGroupArr?: {
array?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
};
localizedGroupSelect?: {
select?: ('one' | 'two')[] | null;
};
localizedGroupRel?: {
email?: (string | null) | EmailField;
};
localizedGroupManyRel?: {
email?: (string | EmailField)[] | null;
};
localizedGroupPolyRel?: {
email?: {
relationTo: 'email-fields';
value: string | EmailField;
} | null;
};
localizedGroupPolyHasManyRel?: {
email?:
| {
relationTo: 'email-fields';
value: string | EmailField;
}[]
| null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "row-fields".
*/
export interface RowField {
id: string;
title: string;
field_with_width_a?: string | null;
field_with_width_b?: string | null;
field_with_width_30_percent?: string | null;
field_with_width_60_percent?: string | null;
field_with_width_20_percent?: string | null;
field_within_collapsible_a?: string | null;
field_within_collapsible_b?: string | null;
field_20_percent_width_within_row_a?: string | null;
no_set_width_within_row_b?: string | null;
no_set_width_within_row_c?: string | null;
field_20_percent_width_within_row_d?: string | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "indexed-fields".
*/
export interface IndexedField {
id: string;
text: string;
uniqueText?: string | null;
uniqueRelationship?: (string | null) | TextField;
uniqueHasManyRelationship?: (string | TextField)[] | null;
uniqueHasManyRelationship_2?: (string | TextField)[] | null;
uniquePolymorphicRelationship?: {
relationTo: 'text-fields';
value: string | TextField;
} | null;
uniquePolymorphicRelationship_2?: {
relationTo: 'text-fields';
value: string | TextField;
} | null;
uniqueHasManyPolymorphicRelationship?:
| {
relationTo: 'text-fields';
value: string | TextField;
}[]
| null;
uniqueHasManyPolymorphicRelationship_2?:
| {
relationTo: 'text-fields';
value: string | TextField;
}[]
| null;
uniqueRequiredText: string;
localizedUniqueRequiredText: string;
/**
* @minItems 2
* @maxItems 2
*/
point?: [number, number] | null;
group?: {
localizedUnique?: string | null;
unique?: string | null;
/**
* @minItems 2
* @maxItems 2
*/
point?: [number, number] | null;
};
collapsibleLocalizedUnique?: string | null;
collapsibleTextUnique?: string | null;
someText?: string | null;
some?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "json-fields".
*/
export interface JsonField {
id: string;
json?: {
array?: {
object?: {
array?: number[];
text?: string;
};
text?: string;
}[];
foo?: 'bar' | 'foobar';
number?: 10 | 5;
[k: string]: unknown;
};
group?: {
jsonWithinGroup?:
| {
[k: string]: unknown;
}
| unknown[]
| string
| number
| boolean
| null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "number-fields".
*/
export interface NumberField {
id: string;
number?: number | null;
min?: number | null;
max?: number | null;
positiveNumber?: number | null;
negativeNumber?: number | null;
decimalMin?: number | null;
decimalMax?: number | null;
defaultNumber?: number | null;
hasMany?: number[] | null;
validatesHasMany?: number[] | null;
localizedHasMany?: number[] | null;
withMinRows?: number[] | null;
array?:
| {
numbers?: number[] | null;
id?: string | null;
}[]
| null;
blocks?:
| {
numbers?: number[] | null;
id?: string | null;
blockName?: string | null;
blockType: 'block';
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "point-fields".
*/
export interface PointField {
id: string;
/**
* @minItems 2
* @maxItems 2
*/
point: [number, number];
/**
* @minItems 2
* @maxItems 2
*/
localized?: [number, number] | null;
group?: {
/**
* @minItems 2
* @maxItems 2
*/
point?: [number, number] | null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relationship-fields".
*/
export interface RelationshipField {
id: string;
text?: string | null;
relationship:
| {
relationTo: 'text-fields';
value: string | TextField;
}
| {
relationTo: 'array-fields';
value: string | ArrayField;
};
relationHasManyPolymorphic?:
| (
| {
relationTo: 'text-fields';
value: string | TextField;
}
| {
relationTo: 'array-fields';
value: string | ArrayField;
}
)[]
| null;
relationToSelf?: (string | null) | RelationshipField;
relationToSelfSelectOnly?: (string | null) | RelationshipField;
relationWithAllowCreateToFalse?: (string | null) | User;
relationWithAllowEditToFalse?: (string | null) | User;
relationWithDynamicDefault?: (string | null) | User;
relationHasManyWithDynamicDefault?: {
relationTo: 'users';
value: string | User;
} | null;
relationshipWithMin?: (string | TextField)[] | null;
relationshipWithMax?: (string | TextField)[] | null;
relationshipHasMany?: (string | TextField)[] | null;
array?:
| {
relationship?: (string | null) | TextField;
id?: string | null;
}[]
| null;
relationshipWithMinRows?:
| {
relationTo: 'text-fields';
value: string | TextField;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexical-relationship-fields".
*/
export interface LexicalRelationshipField {
id: string;
richText?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
richText2?: {
root: {
type: string;
children: {
type: string;
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` "rich-text-fields".
*/
export interface RichTextField {
id: string;
title: string;
lexicalCustomFields: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
};
lexicalCustomFields_html?: string | null;
lexical?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
selectHasMany?: ('one' | 'two' | 'three' | 'four' | 'five' | 'six')[] | null;
richText: {
[k: string]: unknown;
}[];
richTextCustomFields?:
| {
[k: string]: unknown;
}[]
| null;
richTextReadOnly?:
| {
[k: string]: unknown;
}[]
| null;
blocks?:
| (
| {
text?: string | null;
id?: string | null;
blockName?: string | null;
blockType: 'textBlock';
}
| {
text?:
| {
[k: string]: unknown;
}[]
| null;
id?: string | null;
blockName?: string | null;
blockType: 'richTextBlock';
}
)[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "select-fields".
*/
export interface SelectField {
id: string;
select?: ('one' | 'two' | 'three') | null;
selectReadOnly?: ('one' | 'two' | 'three') | null;
selectHasMany?: ('one' | 'two' | 'three' | 'four' | 'five' | 'six')[] | null;
array?:
| {
selectHasMany?: ('one' | 'two' | 'three' | 'four' | 'five' | 'six')[] | null;
group?: {
selectHasMany?: ('one' | 'two' | 'three' | 'four' | 'five' | 'six')[] | null;
};
id?: string | null;
}[]
| null;
selectHasManyLocalized?: ('one' | 'two')[] | null;
selectI18n?: ('one' | 'two' | 'three') | null;
simple?: ('One' | 'Two' | 'Three') | null;
settings?: {
category?: ('a' | 'b')[] | null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "tabs-fields-2".
*/
export interface TabsFields2 {
id: string;
tabsInArray?:
| {
text?: string | null;
tab2?: {
text2?: string | null;
};
id?: string | null;
}[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "tabs-fields".
*/
export interface TabsField {
id: string;
sidebarField?: string | null;
array: {
text: string;
id?: string | null;
}[];
blocks: (ContentBlock | NumberBlock | SubBlocksBlock | TabsBlock)[];
group: {
number: number;
};
textInRow: string;
numberInRow: number;
json?:
| {
[k: string]: unknown;
}
| unknown[]
| string
| number
| boolean
| null;
tab: TabWithName;
namedTabWithDefaultValue?: {
defaultValue?: string | null;
};
localizedTab?: {
text?: string | null;
};
accessControlTab?: {
text?: string | null;
};
hooksTab?: {
beforeValidate?: boolean | null;
beforeChange?: boolean | null;
afterChange?: boolean | null;
afterRead?: boolean | null;
};
camelCaseTab?: {
array?:
| {
text?: string | null;
array?:
| {
text?: string | null;
id?: string | null;
}[]
| null;
id?: string | null;
}[]
| null;
};
textarea?: string | null;
anotherText: string;
nestedTab?: {
text?: string | null;
};
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "TabWithName".
*/
export interface TabWithName {
array: {
text: string;
id?: string | null;
}[];
text?: string | null;
defaultValue?: string | null;
arrayInRow?:
| {
textInArrayInRow?: string | null;
id?: string | null;
}[]
| null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads".
*/
export interface Upload {
id: string;
text?: string | null;
media?: (string | null) | Upload;
updatedAt: string;
createdAt: string;
url?: string | null;
thumbnailURL?: string | null;
filename?: string | null;
mimeType?: string | null;
filesize?: number | null;
width?: number | null;
height?: number | null;
focalX?: number | null;
focalY?: number | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads2".
*/
export interface Uploads2 {
id: string;
text?: string | null;
media?: (string | null) | Uploads2;
updatedAt: string;
createdAt: string;
url?: string | null;
thumbnailURL?: string | null;
filename?: string | null;
mimeType?: string | null;
filesize?: number | null;
width?: number | null;
height?: number | null;
focalX?: number | null;
focalY?: number | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads3".
*/
export interface Uploads3 {
id: string;
media?: (string | null) | Uploads3;
updatedAt: string;
createdAt: string;
url?: string | null;
thumbnailURL?: string | null;
filename?: string | null;
mimeType?: string | null;
filesize?: number | null;
width?: number | null;
height?: number | null;
focalX?: number | null;
focalY?: number | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-multi".
*/
export interface UploadsMulti {
id: string;
text?: string | null;
media?: (string | Upload)[] | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-poly".
*/
export interface UploadsPoly {
id: string;
text?: string | null;
media?:
| ({
relationTo: 'uploads';
value: string | Upload;
} | null)
| ({
relationTo: 'uploads2';
value: string | Uploads2;
} | null);
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-multi-poly".
*/
export interface UploadsMultiPoly {
id: string;
text?: string | null;
media?:
| (
| {
relationTo: 'uploads';
value: string | Upload;
}
| {
relationTo: 'uploads2';
value: string | Uploads2;
}
)[]
| null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-restricted".
*/
export interface UploadsRestricted {
id: string;
text?: string | null;
uploadWithoutRestriction?: (string | null) | Upload;
uploadWithAllowCreateFalse?: (string | null) | Upload;
uploadMultipleWithAllowCreateFalse?: (string | Upload)[] | null;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "ui-fields".
*/
export interface UiField {
id: string;
text: string;
updatedAt: string;
createdAt: string;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "payload-locked-documents".
*/
export interface PayloadLockedDocument {
id: string;
document?:
| ({
relationTo: 'lexical-fields';
value: string | LexicalField;
} | null)
| ({
relationTo: 'lexical-migrate-fields';
value: string | LexicalMigrateField;
} | null)
| ({
relationTo: 'lexical-localized-fields';
value: string | LexicalLocalizedField;
} | null)
| ({
relationTo: 'lexicalObjectReferenceBug';
value: string | LexicalObjectReferenceBug;
} | null)
| ({
relationTo: 'users';
value: string | User;
} | null)
| ({
relationTo: 'LexicalInBlock';
value: string | LexicalInBlock;
} | null)
| ({
relationTo: 'array-fields';
value: string | ArrayField;
} | null)
| ({
relationTo: 'block-fields';
value: string | BlockField;
} | null)
| ({
relationTo: 'checkbox-fields';
value: string | CheckboxField;
} | null)
| ({
relationTo: 'code-fields';
value: string | CodeField;
} | null)
| ({
relationTo: 'collapsible-fields';
value: string | CollapsibleField;
} | null)
| ({
relationTo: 'conditional-logic';
value: string | ConditionalLogic;
} | null)
| ({
relationTo: 'custom-id';
value: string | CustomId;
} | null)
| ({
relationTo: 'date-fields';
value: string | DateField;
} | null)
| ({
relationTo: 'email-fields';
value: string | EmailField;
} | null)
| ({
relationTo: 'radio-fields';
value: string | RadioField;
} | null)
| ({
relationTo: 'group-fields';
value: string | GroupField;
} | null)
| ({
relationTo: 'row-fields';
value: string | RowField;
} | null)
| ({
relationTo: 'indexed-fields';
value: string | IndexedField;
} | null)
| ({
relationTo: 'json-fields';
value: string | JsonField;
} | null)
| ({
relationTo: 'number-fields';
value: string | NumberField;
} | null)
| ({
relationTo: 'point-fields';
value: string | PointField;
} | null)
| ({
relationTo: 'relationship-fields';
value: string | RelationshipField;
} | null)
| ({
relationTo: 'lexical-relationship-fields';
value: string | LexicalRelationshipField;
} | null)
| ({
relationTo: 'rich-text-fields';
value: string | RichTextField;
} | null)
| ({
relationTo: 'select-fields';
value: string | SelectField;
} | null)
| ({
relationTo: 'tabs-fields-2';
value: string | TabsFields2;
} | null)
| ({
relationTo: 'tabs-fields';
value: string | TabsField;
} | null)
| ({
relationTo: 'text-fields';
value: string | TextField;
} | null)
| ({
relationTo: 'uploads';
value: string | Upload;
} | null)
| ({
relationTo: 'uploads2';
value: string | Uploads2;
} | null)
| ({
relationTo: 'uploads3';
value: string | Uploads3;
} | null)
| ({
relationTo: 'uploads-multi';
value: string | UploadsMulti;
} | null)
| ({
relationTo: 'uploads-poly';
value: string | UploadsPoly;
} | null)
| ({
relationTo: 'uploads-multi-poly';
value: string | UploadsMultiPoly;
} | null)
| ({
relationTo: 'uploads-restricted';
value: string | UploadsRestricted;
} | null)
| ({
relationTo: 'ui-fields';
value: string | UiField;
} | 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` "lexical-fields_select".
*/
export interface LexicalFieldsSelect<T extends boolean = true> {
title?: T;
lexicalRootEditor?: T;
lexicalSimple?: T;
lexicalWithBlocks?: T;
lexicalWithBlocks_markdown?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexical-migrate-fields_select".
*/
export interface LexicalMigrateFieldsSelect<T extends boolean = true> {
title?: T;
lexicalWithLexicalPluginData?: T;
lexicalWithSlateData?: T;
lexicalSimple?: T;
lexicalSimple_html?: T;
groupWithLexicalField?:
| T
| {
lexicalInGroupField?: T;
lexicalInGroupField_html?: T;
};
arrayWithLexicalField?:
| T
| {
lexicalInArrayField?: T;
lexicalInArrayField_html?: T;
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexical-localized-fields_select".
*/
export interface LexicalLocalizedFieldsSelect<T extends boolean = true> {
title?: T;
lexicalBlocksSubLocalized?: T;
lexicalBlocksLocalized?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexicalObjectReferenceBug_select".
*/
export interface LexicalObjectReferenceBugSelect<T extends boolean = true> {
lexicalDefault?: T;
lexicalEditor?: 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> {
canViewConditionalField?: T;
updatedAt?: T;
createdAt?: T;
email?: T;
resetPasswordToken?: T;
resetPasswordExpiration?: T;
salt?: T;
hash?: T;
loginAttempts?: T;
lockUntil?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "LexicalInBlock_select".
*/
export interface LexicalInBlockSelect<T extends boolean = true> {
blocks?:
| T
| {
lexicalInBlock2?:
| T
| {
lexical?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "array-fields_select".
*/
export interface ArrayFieldsSelect<T extends boolean = true> {
title?: T;
items?:
| T
| {
text?: T;
anotherText?: T;
localizedText?: T;
subArray?:
| T
| {
text?: T;
id?: T;
};
id?: T;
};
collapsedArray?:
| T
| {
text?: T;
id?: T;
};
localized?:
| T
| {
text?: T;
id?: T;
};
readOnly?:
| T
| {
text?: T;
id?: T;
};
potentiallyEmptyArray?:
| T
| {
text?: T;
groupInRow?:
| T
| {
textInGroupInRow?: T;
};
id?: T;
};
rowLabelAsComponent?:
| T
| {
title?: T;
id?: T;
};
arrayWithMinRows?:
| T
| {
text?: T;
id?: T;
};
disableSort?:
| T
| {
text?: T;
id?: T;
};
nestedArrayLocalized?:
| T
| {
array?:
| T
| {
text?: T;
id?: T;
};
id?: T;
};
externallyUpdatedArray?:
| T
| {
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "block-fields_select".
*/
export interface BlockFieldsSelect<T extends boolean = true> {
blocks?:
| T
| {
content?: T | ContentBlockSelect<T>;
number?: T | NumberBlockSelect<T>;
subBlocks?: T | SubBlocksBlockSelect<T>;
tabs?: T | TabsBlockSelect<T>;
};
duplicate?:
| T
| {
content?: T | ContentBlockSelect<T>;
number?: T | NumberBlockSelect<T>;
subBlocks?: T | SubBlocksBlockSelect<T>;
tabs?: T | TabsBlockSelect<T>;
};
collapsedByDefaultBlocks?:
| T
| {
localizedContent?: T | LocalizedContentBlockSelect<T>;
localizedNumber?: T | LocalizedNumberBlockSelect<T>;
localizedSubBlocks?: T | LocalizedSubBlocksBlockSelect<T>;
localizedTabs?: T | LocalizedTabsBlockSelect<T>;
};
disableSort?:
| T
| {
localizedContent?: T | LocalizedContentBlockSelect<T>;
localizedNumber?: T | LocalizedNumberBlockSelect<T>;
localizedSubBlocks?: T | LocalizedSubBlocksBlockSelect<T>;
localizedTabs?: T | LocalizedTabsBlockSelect<T>;
};
localizedBlocks?:
| T
| {
localizedContent?: T | LocalizedContentBlockSelect<T>;
localizedNumber?: T | LocalizedNumberBlockSelect<T>;
localizedSubBlocks?: T | LocalizedSubBlocksBlockSelect<T>;
localizedTabs?: T | LocalizedTabsBlockSelect<T>;
};
i18nBlocks?:
| T
| {
text?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
};
blocksWithLocalizedArray?:
| T
| {
localizedArray?:
| T
| {
array?:
| T
| {
text?: T;
id?: T;
};
id?: T;
blockName?: T;
};
};
blocksWithSimilarConfigs?:
| T
| {
'block-a'?:
| T
| {
items?:
| T
| {
title?: T;
id?: T;
};
id?: T;
blockName?: T;
};
'block-b'?:
| T
| {
items?:
| T
| {
title2?: T;
id?: T;
};
id?: T;
blockName?: T;
};
'group-block'?:
| T
| {
group?:
| T
| {
text?: T;
};
id?: T;
blockName?: T;
};
};
blocksWithSimilarGroup?:
| T
| {
'group-block'?:
| T
| {
group?:
| T
| {
text?: T;
};
id?: T;
blockName?: T;
};
'block-b'?:
| T
| {
items?:
| T
| {
title2?: T;
id?: T;
};
id?: T;
blockName?: T;
};
};
blocksWithMinRows?:
| T
| {
block?:
| T
| {
blockTitle?: T;
id?: T;
blockName?: T;
};
};
customBlocks?:
| T
| {
'block-1'?:
| T
| {
block1Title?: T;
id?: T;
blockName?: T;
};
'block-2'?:
| T
| {
block2Title?: T;
id?: T;
blockName?: T;
};
};
relationshipBlocks?:
| T
| {
relationships?:
| T
| {
relationship?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "ContentBlock_select".
*/
export interface ContentBlockSelect<T extends boolean = true> {
text?: T;
richText?: T;
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "NumberBlock_select".
*/
export interface NumberBlockSelect<T extends boolean = true> {
number?: T;
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "SubBlocksBlock_select".
*/
export interface SubBlocksBlockSelect<T extends boolean = true> {
subBlocks?:
| T
| {
text?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
number?:
| T
| {
number?: T;
id?: T;
blockName?: T;
};
};
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "TabsBlock_select".
*/
export interface TabsBlockSelect<T extends boolean = true> {
textInCollapsible?: T;
textInRow?: T;
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedContentBlock_select".
*/
export interface LocalizedContentBlockSelect<T extends boolean = true> {
text?: T;
richText?: T;
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedNumberBlock_select".
*/
export interface LocalizedNumberBlockSelect<T extends boolean = true> {
number?: T;
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedSubBlocksBlock_select".
*/
export interface LocalizedSubBlocksBlockSelect<T extends boolean = true> {
subBlocks?:
| T
| {
text?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
number?:
| T
| {
number?: T;
id?: T;
blockName?: T;
};
};
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "localizedTabsBlock_select".
*/
export interface LocalizedTabsBlockSelect<T extends boolean = true> {
textInCollapsible?: T;
textInRow?: T;
id?: T;
blockName?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "checkbox-fields_select".
*/
export interface CheckboxFieldsSelect<T extends boolean = true> {
checkbox?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "code-fields_select".
*/
export interface CodeFieldsSelect<T extends boolean = true> {
javascript?: T;
typescript?: T;
json?: T;
html?: T;
css?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "collapsible-fields_select".
*/
export interface CollapsibleFieldsSelect<T extends boolean = true> {
text?: T;
group?:
| T
| {
textWithinGroup?: T;
subGroup?:
| T
| {
textWithinSubGroup?: T;
};
};
someText?: T;
group2?:
| T
| {
textWithinGroup?: T;
subGroup?:
| T
| {
textWithinSubGroup?: T;
};
};
functionTitleField?: T;
componentTitleField?: T;
nestedTitle?: T;
arrayWithCollapsibles?:
| T
| {
innerCollapsible?: T;
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "conditional-logic_select".
*/
export interface ConditionalLogicSelect<T extends boolean = true> {
text?: T;
toggleField?: T;
fieldWithCondition?: T;
userConditional?: T;
parentGroup?:
| T
| {
enableParentGroupFields?: T;
siblingField?: T;
};
reliesOnParentGroup?: T;
groupSelection?: T;
group1?:
| T
| {
group1Field?: T;
};
group2?:
| T
| {
group2Field?: T;
};
enableConditionalFields?: T;
arrayWithConditionalField?:
| T
| {
text?: T;
textWithCondition?: T;
id?: T;
};
blocksWithConditionalField?:
| T
| {
blockWithConditionalField?:
| T
| {
text?: T;
textWithCondition?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "custom-id_select".
*/
export interface CustomIdSelect<T extends boolean = true> {
id?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "date-fields_select".
*/
export interface DateFieldsSelect<T extends boolean = true> {
default?: T;
timeOnly?: T;
timeOnlyWithCustomFormat?: T;
dayOnly?: T;
dayAndTime?: T;
monthOnly?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "email-fields_select".
*/
export interface EmailFieldsSelect<T extends boolean = true> {
email?: T;
localizedEmail?: T;
emailWithAutocomplete?: T;
i18nEmail?: T;
defaultEmail?: T;
defaultEmptyString?: T;
defaultFunction?: T;
defaultAsync?: T;
customLabel?: T;
customError?: T;
beforeAndAfterInput?: T;
disableListColumnText?: T;
disableListFilterText?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "radio-fields_select".
*/
export interface RadioFieldsSelect<T extends boolean = true> {
radio?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "group-fields_select".
*/
export interface GroupFieldsSelect<T extends boolean = true> {
group?:
| T
| {
text?: T;
defaultParent?: T;
defaultChild?: T;
subGroup?:
| T
| {
textWithinGroup?: T;
arrayWithinGroup?:
| T
| {
textWithinArray?: T;
id?: T;
};
};
};
arrayOfGroups?:
| T
| {
groupItem?:
| T
| {
text?: T;
};
id?: T;
};
localizedGroup?:
| T
| {
text?: T;
};
potentiallyEmptyGroup?:
| T
| {
text?: T;
};
groupInRow?:
| T
| {
field?: T;
secondField?: T;
thirdField?: T;
};
secondGroupInRow?:
| T
| {
field?: T;
nestedGroup?:
| T
| {
nestedField?: T;
};
};
groups?:
| T
| {
groupInRow?:
| T
| {
field?: T;
secondField?: T;
thirdField?: T;
};
secondGroupInRow?:
| T
| {
field?: T;
nestedGroup?:
| T
| {
nestedField?: T;
};
};
};
camelCaseGroup?:
| T
| {
array?:
| T
| {
text?: T;
array?:
| T
| {
text?: T;
id?: T;
};
id?: T;
};
};
localizedGroupArr?:
| T
| {
array?:
| T
| {
text?: T;
id?: T;
};
};
localizedGroupSelect?:
| T
| {
select?: T;
};
localizedGroupRel?:
| T
| {
email?: T;
};
localizedGroupManyRel?:
| T
| {
email?: T;
};
localizedGroupPolyRel?:
| T
| {
email?: T;
};
localizedGroupPolyHasManyRel?:
| T
| {
email?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "row-fields_select".
*/
export interface RowFieldsSelect<T extends boolean = true> {
id?: T;
title?: T;
field_with_width_a?: T;
field_with_width_b?: T;
field_with_width_30_percent?: T;
field_with_width_60_percent?: T;
field_with_width_20_percent?: T;
field_within_collapsible_a?: T;
field_within_collapsible_b?: T;
field_20_percent_width_within_row_a?: T;
no_set_width_within_row_b?: T;
no_set_width_within_row_c?: T;
field_20_percent_width_within_row_d?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "indexed-fields_select".
*/
export interface IndexedFieldsSelect<T extends boolean = true> {
text?: T;
uniqueText?: T;
uniqueRelationship?: T;
uniqueHasManyRelationship?: T;
uniqueHasManyRelationship_2?: T;
uniquePolymorphicRelationship?: T;
uniquePolymorphicRelationship_2?: T;
uniqueHasManyPolymorphicRelationship?: T;
uniqueHasManyPolymorphicRelationship_2?: T;
uniqueRequiredText?: T;
localizedUniqueRequiredText?: T;
point?: T;
group?:
| T
| {
localizedUnique?: T;
unique?: T;
point?: T;
};
collapsibleLocalizedUnique?: T;
collapsibleTextUnique?: T;
someText?: T;
some?:
| T
| {
text?: T;
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "json-fields_select".
*/
export interface JsonFieldsSelect<T extends boolean = true> {
json?: T;
group?:
| T
| {
jsonWithinGroup?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "number-fields_select".
*/
export interface NumberFieldsSelect<T extends boolean = true> {
number?: T;
min?: T;
max?: T;
positiveNumber?: T;
negativeNumber?: T;
decimalMin?: T;
decimalMax?: T;
defaultNumber?: T;
hasMany?: T;
validatesHasMany?: T;
localizedHasMany?: T;
withMinRows?: T;
array?:
| T
| {
numbers?: T;
id?: T;
};
blocks?:
| T
| {
block?:
| T
| {
numbers?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "point-fields_select".
*/
export interface PointFieldsSelect<T extends boolean = true> {
point?: T;
localized?: T;
group?:
| T
| {
point?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "relationship-fields_select".
*/
export interface RelationshipFieldsSelect<T extends boolean = true> {
text?: T;
relationship?: T;
relationHasManyPolymorphic?: T;
relationToSelf?: T;
relationToSelfSelectOnly?: T;
relationWithAllowCreateToFalse?: T;
relationWithAllowEditToFalse?: T;
relationWithDynamicDefault?: T;
relationHasManyWithDynamicDefault?: T;
relationshipWithMin?: T;
relationshipWithMax?: T;
relationshipHasMany?: T;
array?:
| T
| {
relationship?: T;
id?: T;
};
relationshipWithMinRows?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "lexical-relationship-fields_select".
*/
export interface LexicalRelationshipFieldsSelect<T extends boolean = true> {
richText?: T;
richText2?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "rich-text-fields_select".
*/
export interface RichTextFieldsSelect<T extends boolean = true> {
title?: T;
lexicalCustomFields?: T;
lexicalCustomFields_html?: T;
lexical?: T;
selectHasMany?: T;
richText?: T;
richTextCustomFields?: T;
richTextReadOnly?: T;
blocks?:
| T
| {
textBlock?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
richTextBlock?:
| T
| {
text?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "select-fields_select".
*/
export interface SelectFieldsSelect<T extends boolean = true> {
select?: T;
selectReadOnly?: T;
selectHasMany?: T;
array?:
| T
| {
selectHasMany?: T;
group?:
| T
| {
selectHasMany?: T;
};
id?: T;
};
selectHasManyLocalized?: T;
selectI18n?: T;
simple?: T;
settings?:
| T
| {
category?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "tabs-fields-2_select".
*/
export interface TabsFields2Select<T extends boolean = true> {
tabsInArray?:
| T
| {
text?: T;
tab2?:
| T
| {
text2?: T;
};
id?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "tabs-fields_select".
*/
export interface TabsFieldsSelect<T extends boolean = true> {
sidebarField?: T;
array?:
| T
| {
text?: T;
id?: T;
};
blocks?:
| T
| {
content?: T | ContentBlockSelect<T>;
number?: T | NumberBlockSelect<T>;
subBlocks?: T | SubBlocksBlockSelect<T>;
tabs?: T | TabsBlockSelect<T>;
};
group?:
| T
| {
number?: T;
};
textInRow?: T;
numberInRow?: T;
json?: T;
tab?: T | TabWithNameSelect<T>;
namedTabWithDefaultValue?:
| T
| {
defaultValue?: T;
};
localizedTab?:
| T
| {
text?: T;
};
accessControlTab?:
| T
| {
text?: T;
};
hooksTab?:
| T
| {
beforeValidate?: T;
beforeChange?: T;
afterChange?: T;
afterRead?: T;
};
camelCaseTab?:
| T
| {
array?:
| T
| {
text?: T;
array?:
| T
| {
text?: T;
id?: T;
};
id?: T;
};
};
textarea?: T;
anotherText?: T;
nestedTab?:
| T
| {
text?: T;
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "TabWithName_select".
*/
export interface TabWithNameSelect<T extends boolean = true> {
array?:
| T
| {
text?: T;
id?: T;
};
text?: T;
defaultValue?: T;
arrayInRow?:
| T
| {
textInArrayInRow?: T;
id?: T;
};
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "text-fields_select".
*/
export interface TextFieldsSelect<T extends boolean = true> {
text?: T;
hiddenTextField?: T;
adminHiddenTextField?: T;
disabledTextField?: T;
localizedText?: T;
i18nText?: T;
defaultString?: T;
defaultEmptyString?: T;
defaultFunction?: T;
defaultAsync?: T;
overrideLength?: T;
fieldWithDefaultValue?: T;
dependentOnFieldWithDefaultValue?: T;
hasMany?: T;
validatesHasMany?: T;
localizedHasMany?: T;
withMinRows?: T;
withMaxRows?: T;
disableListColumnText?: T;
disableListFilterText?: T;
array?:
| T
| {
texts?: T;
id?: T;
};
blocks?:
| T
| {
block?:
| T
| {
texts?: T;
id?: T;
blockName?: T;
};
};
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads_select".
*/
export interface UploadsSelect<T extends boolean = true> {
text?: T;
media?: T;
updatedAt?: T;
createdAt?: T;
url?: T;
thumbnailURL?: T;
filename?: T;
mimeType?: T;
filesize?: T;
width?: T;
height?: T;
focalX?: T;
focalY?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads2_select".
*/
export interface Uploads2Select<T extends boolean = true> {
text?: T;
media?: T;
updatedAt?: T;
createdAt?: T;
url?: T;
thumbnailURL?: T;
filename?: T;
mimeType?: T;
filesize?: T;
width?: T;
height?: T;
focalX?: T;
focalY?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads3_select".
*/
export interface Uploads3Select<T extends boolean = true> {
media?: T;
updatedAt?: T;
createdAt?: T;
url?: T;
thumbnailURL?: T;
filename?: T;
mimeType?: T;
filesize?: T;
width?: T;
height?: T;
focalX?: T;
focalY?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-multi_select".
*/
export interface UploadsMultiSelect<T extends boolean = true> {
text?: T;
media?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-poly_select".
*/
export interface UploadsPolySelect<T extends boolean = true> {
text?: T;
media?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-multi-poly_select".
*/
export interface UploadsMultiPolySelect<T extends boolean = true> {
text?: T;
media?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "uploads-restricted_select".
*/
export interface UploadsRestrictedSelect<T extends boolean = true> {
text?: T;
uploadWithoutRestriction?: T;
uploadWithAllowCreateFalse?: T;
uploadMultipleWithAllowCreateFalse?: T;
updatedAt?: T;
createdAt?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "ui-fields_select".
*/
export interface UiFieldsSelect<T extends boolean = true> {
text?: T;
updatedAt?: T;
createdAt?: 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` "tabsWithRichText".
*/
export interface TabsWithRichText {
id: string;
tab1?: {
rt1?: {
root: {
type: string;
children: {
type: string;
version: number;
[k: string]: unknown;
}[];
direction: ('ltr' | 'rtl') | null;
format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
indent: number;
version: number;
};
[k: string]: unknown;
} | null;
};
tab2?: {
rt2?: {
root: {
type: string;
children: {
type: string;
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 | null;
createdAt?: string | null;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "tabsWithRichText_select".
*/
export interface TabsWithRichTextSelect<T extends boolean = true> {
tab1?:
| T
| {
rt1?: T;
};
tab2?:
| T
| {
rt2?: T;
};
updatedAt?: T;
createdAt?: T;
globalType?: T;
}
/**
* This interface was referenced by `Config`'s JSON-Schema
* via the `definition` "LexicalBlocksRadioButtonsBlock".
*/
export interface LexicalBlocksRadioButtonsBlock {
radioButtons?: ('option1' | 'option2' | 'option3') | null;
id?: string | null;
blockName?: string | null;
blockType: 'radioButtons';
}
/**
* 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 {}
}