/* 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/Sydney' | 'Pacific/Guam' | 'Pacific/Noumea' | 'Pacific/Auckland' | 'Pacific/Fiji'; export interface Config { auth: { users: UserAuthOperations; }; blocks: {}; collections: { parish: Parish; church: Church; worship: Worship; popePrayerIntentions: PopePrayerIntention; announcement: Announcement; calendar: Calendar; blog: Blog; highlight: Highlight; event: Event; contactPerson: ContactPerson; locations: Location; group: Group; documents: Document; media: Media; users: User; 'payload-locked-documents': PayloadLockedDocument; 'payload-preferences': PayloadPreference; 'payload-migrations': PayloadMigration; }; collectionsJoins: {}; collectionsSelect: { parish: ParishSelect | ParishSelect; church: ChurchSelect | ChurchSelect; worship: WorshipSelect | WorshipSelect; popePrayerIntentions: PopePrayerIntentionsSelect | PopePrayerIntentionsSelect; announcement: AnnouncementSelect | AnnouncementSelect; calendar: CalendarSelect | CalendarSelect; blog: BlogSelect | BlogSelect; highlight: HighlightSelect | HighlightSelect; event: EventSelect | EventSelect; contactPerson: ContactPersonSelect | ContactPersonSelect; locations: LocationsSelect | LocationsSelect; group: GroupSelect | GroupSelect; documents: DocumentsSelect | DocumentsSelect; media: MediaSelect | MediaSelect; users: UsersSelect | UsersSelect; 'payload-locked-documents': PayloadLockedDocumentsSelect | PayloadLockedDocumentsSelect; 'payload-preferences': PayloadPreferencesSelect | PayloadPreferencesSelect; 'payload-migrations': PayloadMigrationsSelect | PayloadMigrationsSelect; }; db: { defaultIDType: string; }; globals: {}; globalsSelect: {}; 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` "parish". */ export interface Parish { id: string; name: string; slug: string; churches: (string | Church)[]; contactPersons?: | { title: string; description: string; id?: string | null; }[] | null; description: string; history: string; contact: string; photo: string | Media; gallery?: | { photo: string | Media; id?: string | null; }[] | null; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "church". */ export interface Church { id: string; name: string; address: string; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "media". */ export interface Media { id: string; alt: string; search?: string | null; prefix?: string | null; 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; sizes?: { thumbnail?: { url?: string | null; width?: number | null; height?: number | null; mimeType?: string | null; filesize?: number | null; filename?: string | null; }; banner?: { url?: string | null; width?: number | null; height?: number | null; mimeType?: string | null; filesize?: number | null; filename?: string | null; }; gallery?: { url?: string | null; width?: number | null; height?: number | null; mimeType?: string | null; filesize?: number | null; filename?: string | null; }; tablet?: { url?: string | null; width?: number | null; height?: number | null; mimeType?: string | null; filesize?: number | null; filename?: string | null; }; }; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "worship". */ export interface Worship { id: string; date: string; location: string | Church; type: 'MASS' | 'FAMILY' | 'WORD'; title?: string | null; cancelled: boolean; liturgicalDay?: string | null; celebrant?: string | null; description?: string | null; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "popePrayerIntentions". */ export interface PopePrayerIntention { id: string; year: number; month: '01' | '02' | '03' | '04' | '05' | '06' | '07' | '08' | '09' | '10' | '11' | '12'; title: string; prayer: string; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "announcement". */ export interface Announcement { id: string; date: string; parish: (string | Parish)[]; document: string | Document; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "documents". */ export interface Document { id: string; prefix?: string | null; 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` "calendar". */ export interface Calendar { id: string; date: string; parish: (string | Parish)[]; document: string | Document; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "blog". */ export interface Blog { id: string; photo?: (string | null) | Media; title: string; parish?: (string | Parish)[] | null; excerpt: string; content: ( | { content: { 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; }; content_html?: string | null; width: '1/2' | '3/4'; id?: string | null; blockName?: string | null; blockType: 'text'; } | { file: string | Document; button: string; id?: string | null; blockName?: string | null; blockType: 'document'; } | { title: string; description: string; email: string; id?: string | null; blockName?: string | null; blockType: 'contactform'; } | { items: { photo: string | Media; id?: string | null; }[]; id?: string | null; blockName?: string | null; blockType: 'gallery'; } )[]; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "highlight". */ export interface Highlight { id: string; from: string; until: string; date: string; link?: | ({ relationTo: 'event'; value: string | Event; } | null) | ({ relationTo: 'blog'; value: string | Blog; } | null) | ({ relationTo: 'worship'; value: string | Worship; } | null); text: string; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "event". */ export interface Event { id: string; photo?: (string | null) | Media; title: string; date: string; location: string | Location; parish?: (string | Parish)[] | null; group?: (string | Group)[] | null; contact?: (string | null) | ContactPerson; shortDescription: string; description: string; rsvpLink?: string | null; flyer?: (string | null) | Document; cancelled: boolean; isRecurring: boolean; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "locations". */ export interface Location { id: string; name: string; address?: string | null; /** * @minItems 2 * @maxItems 2 */ coordinates?: [number, number] | null; notes?: string | null; barrierFree?: boolean | null; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "group". */ export interface Group { id: string; photo?: (string | null) | Media; name: string; slug: string; shortDescription: string; text?: { 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; text_html?: string | null; content?: | ( | { content: { 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; }; content_html?: string | null; width: '1/2' | '3/4'; id?: string | null; blockName?: string | null; blockType: 'text'; } | { items: { photo: string | Media; id?: string | null; }[]; id?: string | null; blockName?: string | null; blockType: 'gallery'; } | { file: string | Document; button: string; id?: string | null; blockName?: string | null; blockType: 'document'; } | { title: string; description: string; email: string; id?: string | null; blockName?: string | null; blockType: 'contactform'; } )[] | null; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "contactPerson". */ export interface ContactPerson { id: string; photo?: (string | null) | Media; name: string; email?: string | null; telephone?: string | null; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "users". */ export interface User { id: string; name: string; roles: 'user' | 'employee' | 'admin'; groups?: (string | Group)[] | 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` "payload-locked-documents". */ export interface PayloadLockedDocument { id: string; document?: | ({ relationTo: 'parish'; value: string | Parish; } | null) | ({ relationTo: 'church'; value: string | Church; } | null) | ({ relationTo: 'worship'; value: string | Worship; } | null) | ({ relationTo: 'popePrayerIntentions'; value: string | PopePrayerIntention; } | null) | ({ relationTo: 'announcement'; value: string | Announcement; } | null) | ({ relationTo: 'calendar'; value: string | Calendar; } | null) | ({ relationTo: 'blog'; value: string | Blog; } | null) | ({ relationTo: 'highlight'; value: string | Highlight; } | null) | ({ relationTo: 'event'; value: string | Event; } | null) | ({ relationTo: 'contactPerson'; value: string | ContactPerson; } | null) | ({ relationTo: 'locations'; value: string | Location; } | null) | ({ relationTo: 'group'; value: string | Group; } | null) | ({ relationTo: 'documents'; value: string | Document; } | null) | ({ relationTo: 'media'; value: string | Media; } | 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` "parish_select". */ export interface ParishSelect { name?: T; slug?: T; churches?: T; contactPersons?: | T | { title?: T; description?: T; id?: T; }; description?: T; history?: T; contact?: T; photo?: T; gallery?: | T | { photo?: T; id?: T; }; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "church_select". */ export interface ChurchSelect { name?: T; address?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "worship_select". */ export interface WorshipSelect { date?: T; location?: T; type?: T; title?: T; cancelled?: T; liturgicalDay?: T; celebrant?: T; description?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "popePrayerIntentions_select". */ export interface PopePrayerIntentionsSelect { year?: T; month?: T; title?: T; prayer?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "announcement_select". */ export interface AnnouncementSelect { date?: T; parish?: T; document?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "calendar_select". */ export interface CalendarSelect { date?: T; parish?: T; document?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "blog_select". */ export interface BlogSelect { photo?: T; title?: T; parish?: T; excerpt?: T; content?: | T | { text?: | T | { content?: T; content_html?: T; width?: T; id?: T; blockName?: T; }; document?: | T | { file?: T; button?: T; id?: T; blockName?: T; }; contactform?: | T | { title?: T; description?: T; email?: T; id?: T; blockName?: T; }; gallery?: | T | { items?: | T | { photo?: T; id?: T; }; id?: T; blockName?: T; }; }; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "highlight_select". */ export interface HighlightSelect { from?: T; until?: T; date?: T; link?: T; text?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "event_select". */ export interface EventSelect { photo?: T; title?: T; date?: T; location?: T; parish?: T; group?: T; contact?: T; shortDescription?: T; description?: T; rsvpLink?: T; flyer?: T; cancelled?: T; isRecurring?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "contactPerson_select". */ export interface ContactPersonSelect { photo?: T; name?: T; email?: T; telephone?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "locations_select". */ export interface LocationsSelect { name?: T; address?: T; coordinates?: T; notes?: T; barrierFree?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "group_select". */ export interface GroupSelect { photo?: T; name?: T; slug?: T; shortDescription?: T; text?: T; text_html?: T; content?: | T | { text?: | T | { content?: T; content_html?: T; width?: T; id?: T; blockName?: T; }; gallery?: | T | { items?: | T | { photo?: T; id?: T; }; id?: T; blockName?: T; }; document?: | T | { file?: T; button?: T; id?: T; blockName?: T; }; contactform?: | T | { title?: T; description?: T; email?: T; id?: T; blockName?: T; }; }; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "documents_select". */ export interface DocumentsSelect { prefix?: 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` "media_select". */ export interface MediaSelect { alt?: T; search?: T; prefix?: T; updatedAt?: T; createdAt?: T; url?: T; thumbnailURL?: T; filename?: T; mimeType?: T; filesize?: T; width?: T; height?: T; focalX?: T; focalY?: T; sizes?: | T | { thumbnail?: | T | { url?: T; width?: T; height?: T; mimeType?: T; filesize?: T; filename?: T; }; banner?: | T | { url?: T; width?: T; height?: T; mimeType?: T; filesize?: T; filename?: T; }; gallery?: | T | { url?: T; width?: T; height?: T; mimeType?: T; filesize?: T; filename?: T; }; tablet?: | T | { url?: T; width?: T; height?: T; mimeType?: T; filesize?: T; filename?: T; }; }; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "users_select". */ export interface UsersSelect { name?: T; roles?: T; groups?: 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` "payload-locked-documents_select". */ export interface PayloadLockedDocumentsSelect { 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 { 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 { name?: T; batch?: T; updatedAt?: T; createdAt?: 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 {} }