689 lines
15 KiB
TypeScript
689 lines
15 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: {
|
|
users: User;
|
|
media: Media;
|
|
books: Book;
|
|
authors: Author;
|
|
repositories: Repository;
|
|
copies: Copy;
|
|
holdRequests: HoldRequest;
|
|
checkouts: Checkout;
|
|
genre: Genre;
|
|
pages: Page;
|
|
'payload-locked-documents': PayloadLockedDocument;
|
|
'payload-preferences': PayloadPreference;
|
|
'payload-migrations': PayloadMigration;
|
|
};
|
|
collectionsJoins: {
|
|
books: {
|
|
copies: 'copies';
|
|
};
|
|
authors: {
|
|
books: 'books';
|
|
};
|
|
repositories: {
|
|
holdRequests: 'holdRequests';
|
|
};
|
|
copies: {
|
|
holdRequests: 'holdRequests';
|
|
};
|
|
checkouts: {
|
|
book: 'copies';
|
|
};
|
|
};
|
|
collectionsSelect: {
|
|
users: UsersSelect<false> | UsersSelect<true>;
|
|
media: MediaSelect<false> | MediaSelect<true>;
|
|
books: BooksSelect<false> | BooksSelect<true>;
|
|
authors: AuthorsSelect<false> | AuthorsSelect<true>;
|
|
repositories: RepositoriesSelect<false> | RepositoriesSelect<true>;
|
|
copies: CopiesSelect<false> | CopiesSelect<true>;
|
|
holdRequests: HoldRequestsSelect<false> | HoldRequestsSelect<true>;
|
|
checkouts: CheckoutsSelect<false> | CheckoutsSelect<true>;
|
|
genre: GenreSelect<false> | GenreSelect<true>;
|
|
pages: PagesSelect<false> | PagesSelect<true>;
|
|
'payload-locked-documents': PayloadLockedDocumentsSelect<false> | PayloadLockedDocumentsSelect<true>;
|
|
'payload-preferences': PayloadPreferencesSelect<false> | PayloadPreferencesSelect<true>;
|
|
'payload-migrations': PayloadMigrationsSelect<false> | PayloadMigrationsSelect<true>;
|
|
};
|
|
db: {
|
|
defaultIDType: number;
|
|
};
|
|
globals: {
|
|
header: Header;
|
|
};
|
|
globalsSelect: {
|
|
header: HeaderSelect<false> | HeaderSelect<true>;
|
|
};
|
|
locale: null;
|
|
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` "users".
|
|
*/
|
|
export interface User {
|
|
id: number;
|
|
role?: ('admin' | 'user') | 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` "media".
|
|
*/
|
|
export interface Media {
|
|
id: number;
|
|
alt: string;
|
|
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` "books".
|
|
*/
|
|
export interface Book {
|
|
id: number;
|
|
books_id?: string | null;
|
|
title?: string | null;
|
|
authors?: (number | Author)[] | null;
|
|
pages?: number | null;
|
|
lcc?: string | null;
|
|
isbn?: string | null;
|
|
asin?: string | null;
|
|
publication?: string | null;
|
|
date?: string | null;
|
|
genre?: (number | Genre)[] | null;
|
|
summary?: string | null;
|
|
description?: {
|
|
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;
|
|
copies?: {
|
|
docs?: (number | Copy)[];
|
|
hasNextPage?: boolean;
|
|
totalDocs?: number;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "authors".
|
|
*/
|
|
export interface Author {
|
|
id: number;
|
|
lf: string;
|
|
fl?: string | null;
|
|
role?: ('Author' | 'Translator' | 'Editor') | null;
|
|
books?: {
|
|
docs?: (number | Book)[];
|
|
hasNextPage?: boolean;
|
|
totalDocs?: number;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "genre".
|
|
*/
|
|
export interface Genre {
|
|
id: number;
|
|
name: string;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "copies".
|
|
*/
|
|
export interface Copy {
|
|
id: number;
|
|
label?: string | null;
|
|
condition?: number | null;
|
|
book?: (number | null) | Book;
|
|
repository?: (number | null) | Repository;
|
|
notes?: {
|
|
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;
|
|
holdRequests?: {
|
|
docs?: (number | HoldRequest)[];
|
|
hasNextPage?: boolean;
|
|
totalDocs?: number;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "repositories".
|
|
*/
|
|
export interface Repository {
|
|
id: number;
|
|
name: string;
|
|
/**
|
|
* This is used to help identify which copies belong to this repo.
|
|
*/
|
|
abbreviation: string;
|
|
owner: (number | User)[];
|
|
dateOpenToPublic?: string | null;
|
|
holdRequests?: {
|
|
docs?: (number | HoldRequest)[];
|
|
hasNextPage?: boolean;
|
|
totalDocs?: number;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "holdRequests".
|
|
*/
|
|
export interface HoldRequest {
|
|
id: number;
|
|
copy?: (number | null) | Copy;
|
|
book: number | Book;
|
|
repository?: (number | null) | Repository;
|
|
userRequested: number | User;
|
|
dateRequested?: string | null;
|
|
isHolding?: boolean | null;
|
|
holdingUntilDate?: string | null;
|
|
isCheckedOut?: boolean | null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "checkouts".
|
|
*/
|
|
export interface Checkout {
|
|
id: number;
|
|
fromHold?: (number | null) | HoldRequest;
|
|
user?: (number | null) | User;
|
|
copy?: (number | null) | Copy;
|
|
book?: {
|
|
docs?: (number | Copy)[];
|
|
hasNextPage?: boolean;
|
|
totalDocs?: number;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "pages".
|
|
*/
|
|
export interface Page {
|
|
id: number;
|
|
title?: string | null;
|
|
layout?:
|
|
| {
|
|
heading?: string | null;
|
|
subheading?: string | null;
|
|
brief?: string | null;
|
|
minHeight?: ('100' | '80' | '60') | null;
|
|
backgroundImage?: (number | null) | Media;
|
|
id?: string | null;
|
|
blockName?: string | null;
|
|
blockType: 'Hero';
|
|
}[]
|
|
| null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "payload-locked-documents".
|
|
*/
|
|
export interface PayloadLockedDocument {
|
|
id: number;
|
|
document?:
|
|
| ({
|
|
relationTo: 'users';
|
|
value: number | User;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'media';
|
|
value: number | Media;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'books';
|
|
value: number | Book;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'authors';
|
|
value: number | Author;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'repositories';
|
|
value: number | Repository;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'copies';
|
|
value: number | Copy;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'holdRequests';
|
|
value: number | HoldRequest;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'checkouts';
|
|
value: number | Checkout;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'genre';
|
|
value: number | Genre;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'pages';
|
|
value: number | Page;
|
|
} | null);
|
|
globalSlug?: string | null;
|
|
user: {
|
|
relationTo: 'users';
|
|
value: number | User;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "payload-preferences".
|
|
*/
|
|
export interface PayloadPreference {
|
|
id: number;
|
|
user: {
|
|
relationTo: 'users';
|
|
value: number | 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: number;
|
|
name?: string | null;
|
|
batch?: number | null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "users_select".
|
|
*/
|
|
export interface UsersSelect<T extends boolean = true> {
|
|
role?: 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` "media_select".
|
|
*/
|
|
export interface MediaSelect<T extends boolean = true> {
|
|
alt?: 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` "books_select".
|
|
*/
|
|
export interface BooksSelect<T extends boolean = true> {
|
|
books_id?: T;
|
|
title?: T;
|
|
authors?: T;
|
|
pages?: T;
|
|
lcc?: T;
|
|
isbn?: T;
|
|
asin?: T;
|
|
publication?: T;
|
|
date?: T;
|
|
genre?: T;
|
|
summary?: T;
|
|
description?: T;
|
|
copies?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "authors_select".
|
|
*/
|
|
export interface AuthorsSelect<T extends boolean = true> {
|
|
lf?: T;
|
|
fl?: T;
|
|
role?: T;
|
|
books?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "repositories_select".
|
|
*/
|
|
export interface RepositoriesSelect<T extends boolean = true> {
|
|
name?: T;
|
|
abbreviation?: T;
|
|
owner?: T;
|
|
dateOpenToPublic?: T;
|
|
holdRequests?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "copies_select".
|
|
*/
|
|
export interface CopiesSelect<T extends boolean = true> {
|
|
label?: T;
|
|
condition?: T;
|
|
book?: T;
|
|
repository?: T;
|
|
notes?: T;
|
|
holdRequests?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "holdRequests_select".
|
|
*/
|
|
export interface HoldRequestsSelect<T extends boolean = true> {
|
|
copy?: T;
|
|
book?: T;
|
|
repository?: T;
|
|
userRequested?: T;
|
|
dateRequested?: T;
|
|
isHolding?: T;
|
|
holdingUntilDate?: T;
|
|
isCheckedOut?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "checkouts_select".
|
|
*/
|
|
export interface CheckoutsSelect<T extends boolean = true> {
|
|
fromHold?: T;
|
|
user?: T;
|
|
copy?: T;
|
|
book?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "genre_select".
|
|
*/
|
|
export interface GenreSelect<T extends boolean = true> {
|
|
name?: T;
|
|
updatedAt?: T;
|
|
createdAt?: T;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "pages_select".
|
|
*/
|
|
export interface PagesSelect<T extends boolean = true> {
|
|
title?: T;
|
|
layout?:
|
|
| T
|
|
| {
|
|
Hero?:
|
|
| T
|
|
| {
|
|
heading?: T;
|
|
subheading?: T;
|
|
brief?: T;
|
|
minHeight?: T;
|
|
backgroundImage?: T;
|
|
id?: T;
|
|
blockName?: 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` "header".
|
|
*/
|
|
export interface Header {
|
|
id: number;
|
|
logo?: (number | null) | Media;
|
|
headerLinks?:
|
|
| {
|
|
label?: string | null;
|
|
page?: (number | null) | Page;
|
|
newTab?: boolean | null;
|
|
id?: string | null;
|
|
}[]
|
|
| null;
|
|
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> {
|
|
logo?: T;
|
|
headerLinks?:
|
|
| T
|
|
| {
|
|
label?: T;
|
|
page?: T;
|
|
newTab?: T;
|
|
id?: 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' {
|
|
export interface GeneratedTypes extends Config {}
|
|
} |