/* 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: {
    parish: Parish;
    church: Church;
    worship: Worship;
    popePrayerIntentions: PopePrayerIntention;
    announcement: Announcement;
    calendar: Calendar;
    blog: Blog;
    highlight: Highlight;
    event: Event;
    eventOccurrence: EventOccurrence;
    classifieds: Classified;
    contactPerson: ContactPerson;
    locations: Location;
    group: Group;
    'donation-form': DonationForm;
    pages: Page;
    prayers: Prayer;
    magazine: Magazine;
    documents: Document;
    media: Media;
    users: User;
    search: Search;
    'payload-kv': PayloadKv;
    'payload-jobs': PayloadJob;
    'payload-locked-documents': PayloadLockedDocument;
    'payload-preferences': PayloadPreference;
    'payload-migrations': PayloadMigration;
  };
  collectionsJoins: {};
  collectionsSelect: {
    parish: ParishSelect<false> | ParishSelect<true>;
    church: ChurchSelect<false> | ChurchSelect<true>;
    worship: WorshipSelect<false> | WorshipSelect<true>;
    popePrayerIntentions: PopePrayerIntentionsSelect<false> | PopePrayerIntentionsSelect<true>;
    announcement: AnnouncementSelect<false> | AnnouncementSelect<true>;
    calendar: CalendarSelect<false> | CalendarSelect<true>;
    blog: BlogSelect<false> | BlogSelect<true>;
    highlight: HighlightSelect<false> | HighlightSelect<true>;
    event: EventSelect<false> | EventSelect<true>;
    eventOccurrence: EventOccurrenceSelect<false> | EventOccurrenceSelect<true>;
    classifieds: ClassifiedsSelect<false> | ClassifiedsSelect<true>;
    contactPerson: ContactPersonSelect<false> | ContactPersonSelect<true>;
    locations: LocationsSelect<false> | LocationsSelect<true>;
    group: GroupSelect<false> | GroupSelect<true>;
    'donation-form': DonationFormSelect<false> | DonationFormSelect<true>;
    pages: PagesSelect<false> | PagesSelect<true>;
    prayers: PrayersSelect<false> | PrayersSelect<true>;
    magazine: MagazineSelect<false> | MagazineSelect<true>;
    documents: DocumentsSelect<false> | DocumentsSelect<true>;
    media: MediaSelect<false> | MediaSelect<true>;
    users: UsersSelect<false> | UsersSelect<true>;
    search: SearchSelect<false> | SearchSelect<true>;
    'payload-kv': PayloadKvSelect<false> | PayloadKvSelect<true>;
    'payload-jobs': PayloadJobsSelect<false> | PayloadJobsSelect<true>;
    'payload-locked-documents': PayloadLockedDocumentsSelect<false> | PayloadLockedDocumentsSelect<true>;
    'payload-preferences': PayloadPreferencesSelect<false> | PayloadPreferencesSelect<true>;
    'payload-migrations': PayloadMigrationsSelect<false> | PayloadMigrationsSelect<true>;
  };
  db: {
    defaultIDType: string;
  };
  fallbackLocale: null;
  globals: {
    menu: Menu;
    footer: Footer;
    'payload-jobs-stats': PayloadJobsStat;
  };
  globalsSelect: {
    menu: MenuSelect<false> | MenuSelect<true>;
    footer: FooterSelect<false> | FooterSelect<true>;
    'payload-jobs-stats': PayloadJobsStatsSelect<false> | PayloadJobsStatsSelect<true>;
  };
  locale: null;
  user: User & {
    collection: 'users';
  };
  jobs: {
    tasks: {
      generateRecurringMasses: TaskGenerateRecurringMasses;
      generateEventOccurrences: TaskGenerateEventOccurrences;
      inline: {
        input: unknown;
        output: 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 der Gemeinde (z.B. "st-clara" → Gemeindeseite ist zu finden unter /gemeinde/st-clara)
   */
  slug: string;
  churches: (string | Church)[];
  contactPersons?:
    | {
        title: string;
        description: string;
        id?: string | null;
      }[]
    | null;
  description: string;
  history: string;
  content?:
    | (
        | {
            content: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            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';
          }
        | {
            id?: string | null;
            blockName?: string | null;
            blockType: 'donation';
          }
        | {
            youtube_id: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'youtube';
          }
        | {
            id?: string | null;
            blockName?: string | null;
            blockType: 'donationAppeal';
          }
        | {
            items: {
              title: string;
              image: string | Media;
              link?:
                | ({
                    relationTo: 'pages';
                    value: string | Page;
                  } | null)
                | ({
                    relationTo: 'group';
                    value: string | Group;
                  } | null);
              /**
               * Alternative zu "Verknüpfung". Nur eins von beiden kann gesetzt werden.
               */
              customLink?: string | null;
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'imageCards';
          }
        | {
            title: string;
            subtitle?: string | null;
            size?: ('xl' | 'lg' | 'md' | 'sm') | null;
            align?: ('left' | 'center') | null;
            color: 'base' | 'shade1' | 'shade2' | 'shade3' | 'contrast' | 'contrastShade1';
            id?: string | null;
            blockName?: string | null;
            blockType: 'title';
          }
        | {
            items: {
              title: string;
              content: {
                root: {
                  type: string;
                  children: {
                    type: any;
                    version: number;
                    [k: string]: unknown;
                  }[];
                  direction: ('ltr' | 'rtl') | null;
                  format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                  indent: number;
                  version: number;
                };
                [k: string]: unknown;
              };
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'collapsibles';
          }
        | {
            prev?: {
              text?: string | null;
              href?: string | null;
            };
            next?: {
              text?: string | null;
              href?: string | null;
            };
            id?: string | null;
            blockName?: string | null;
            blockType: 'nextPrevButtons';
          }
        | {
            title?: string | null;
            titleColor: 'base' | 'contrast';
            backgroundColor: 'none' | 'soft' | 'off-white';
            image: string | Media;
            imagePosition: 'left' | 'right';
            text: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            id?: string | null;
            blockName?: string | null;
            blockType: 'imageWithText';
          }
      )[]
    | null;
  contact: string;
  photo: string | Media;
  gallery?:
    | {
        photo: string | Media;
        caption?: string | null;
        id?: string | null;
      }[]
    | null;
  updatedAt: string;
  createdAt: string;
  _status?: ('draft' | 'published') | null;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "church".
 */
export interface Church {
  id: string;
  name: string;
  address: string;
  /**
   * Wiederkehrende Gottesdienste werden automatisch für die nächsten Wochen als Einträge in der Gottesdienstliste angelegt. Einzelne Termine können dort weiterhin manuell bearbeitet (z. B. abgesagt) werden.
   */
  recurringSchedule?:
    | {
        type: 'MASS' | 'FAMILY' | 'WORD' | 'LANGUAGE' | 'OTHER';
        frequency: 'weekly' | 'biweekly' | 'monthlyByWeekday';
        day: 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday';
        time: string;
        /**
         * z. B. „3.“ + „Sonntag“ = jeden 3. Sonntag im Monat.
         */
        weekOfMonth?: ('first' | 'second' | 'third' | 'fourth' | 'fifth' | 'last') | null;
        /**
         * Ein Datum, an dem dieser Termin stattfindet. Davon ausgehend wird im 2-Wochen-Rhythmus weitergerechnet.
         */
        biweeklyAnchor?: string | null;
        defaultCelebrant?: string | null;
        defaultTitle?: string | null;
        /**
         * Wird als „Hinweise“ auf jeden automatisch erzeugten Gottesdienst übernommen, z. B. „Vor der Messe beten wir den Rosenkranz.“
         */
        defaultDescription?: string | null;
        /**
         * Nur intern, z. B. „Sommerferien: ausgesetzt“. Beeinflusst die Generierung nicht.
         */
        notes?: string | null;
        id?: string | null;
      }[]
    | null;
  updatedAt: string;
  createdAt: string;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "documents".
 */
export interface Document {
  id: 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` "media".
 */
export interface Media {
  id: string;
  alt: string;
  search?: string | null;
  copyrights: {
    source: string;
    publicWithoutName: boolean;
    consent: boolean;
  };
  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` "pages".
 */
export interface Page {
  id: string;
  title: string;
  description?: string | null;
  /**
   * URL-Pfad der Seite (z.B. "meine-seite" → /meine-seite)
   */
  slug?: string | null;
  content?:
    | (
        | {
            title: string;
            description: string;
            image?: (string | null) | Media;
            id?: string | null;
            blockName?: string | null;
            blockType: 'pageHeader';
          }
        | {
            content: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            width: '1/2' | '3/4';
            id?: string | null;
            blockName?: string | null;
            blockType: 'text';
          }
        | {
            title: string;
            subtitle?: string | null;
            size?: ('xl' | 'lg' | 'md' | 'sm') | null;
            align?: ('left' | 'center') | null;
            color: 'base' | 'shade1' | 'shade2' | 'shade3' | 'contrast' | 'contrastShade1';
            id?: string | null;
            blockName?: string | null;
            blockType: 'title';
          }
        | {
            backgroundColor?: ('none' | 'soft' | 'off-white') | null;
            padding?: ('small' | 'medium' | 'large') | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'section';
          }
        | {
            items: {
              photo: string | Media;
              caption?: string | null;
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'gallery';
          }
        | {
            file: string | Document;
            button: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'document';
          }
        | {
            youtube_id: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'youtube';
          }
        | {
            text: string;
            url: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'button';
          }
        | {
            title: string;
            description: string;
            email: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'contactform';
          }
        | {
            id?: string | null;
            blockName?: string | null;
            blockType: 'donation';
          }
        | {
            textLine1?: string | null;
            textLine2?: string | null;
            textLine3?: string | null;
            backgroundColor?: string | null;
            backgroundImage?: (string | null) | Media;
            backgroundPosition?:
              | (
                  | 'center center'
                  | 'top center'
                  | 'bottom center'
                  | 'center left'
                  | 'center right'
                  | 'top left'
                  | 'top right'
                  | 'bottom left'
                  | 'bottom right'
                )
              | null;
            backgroundSize?: ('cover' | 'contain' | 'auto') | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'banner';
          }
        | {
            text: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'mainText';
          }
        | {
            color: 'base' | 'shade1' | 'shade2' | 'shade3' | 'contrast' | 'contrastShade1';
            id?: string | null;
            blockName?: string | null;
            blockType: 'horizontalRule';
          }
        | {
            title?: string | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'blogSlider';
          }
        | {
            title: string;
            text: string;
            image: string | Media;
            content: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            colorStyle?: ('default' | 'soft' | 'off-white' | 'contrast') | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'collapsibleImageWithText';
          }
        | {
            title?: string | null;
            titleColor: 'base' | 'contrast';
            backgroundColor: 'none' | 'soft' | 'off-white';
            image: string | Media;
            imagePosition: 'left' | 'right';
            text: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            id?: string | null;
            blockName?: string | null;
            blockType: 'imageWithText';
          }
        | {
            title: string;
            text: string;
            content: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            backgroundColor?: ('default' | 'soft' | 'off-white') | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'collapsibleMapWithText';
          }
        | {
            items: {
              title: string;
              content: {
                root: {
                  type: string;
                  children: {
                    type: any;
                    version: number;
                    [k: string]: unknown;
                  }[];
                  direction: ('ltr' | 'rtl') | null;
                  format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                  indent: number;
                  version: number;
                };
                [k: string]: unknown;
              };
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'collapsibles';
          }
        | {
            title?: string | null;
            subtitle?: string | null;
            range?: ('rolling' | 'week') | null;
            /**
             * Leer lassen, um alle Kirchen alphabetisch anzuzeigen.
             */
            churches?: (string | Church)[] | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'massTimes';
          }
        | {
            title?: string | null;
            itemsPerPage?: number | null;
            id?: string | null;
            blockName?: string | null;
            blockType: 'events';
          }
        | {
            group: string | Group;
            id?: string | null;
            blockName?: string | null;
            blockType: 'groupEvents';
          }
        | {
            contact: string | ContactPerson;
            id?: string | null;
            blockName?: string | null;
            blockType: 'contactPersonBlock';
          }
        | {
            items: {
              title: string;
              image: string | Media;
              link?:
                | ({
                    relationTo: 'pages';
                    value: string | Page;
                  } | null)
                | ({
                    relationTo: 'group';
                    value: string | Group;
                  } | null);
              /**
               * Alternative zu "Verknüpfung". Nur eins von beiden kann gesetzt werden.
               */
              customLink?: string | null;
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'imageCards';
          }
        | {
            id?: string | null;
            blockName?: string | null;
            blockType: 'classifieds';
          }
        | {
            prev?: {
              text?: string | null;
              href?: string | null;
            };
            next?: {
              text?: string | null;
              href?: string | null;
            };
            id?: string | null;
            blockName?: string | null;
            blockType: 'nextPrevButtons';
          }
      )[]
    | null;
  updatedAt: string;
  createdAt: string;
  _status?: ('draft' | 'published') | null;
}
/**
 * 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 der Gruppe (z.B. "ministrant" → Gruppenseite ist zu finden unter /gruppe/ministrant)
   */
  slug: string;
  shortDescription: string;
  text?: {
    root: {
      type: string;
      children: {
        type: any;
        version: number;
        [k: string]: unknown;
      }[];
      direction: ('ltr' | 'rtl') | null;
      format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
      indent: number;
      version: number;
    };
    [k: string]: unknown;
  } | null;
  content?:
    | (
        | {
            title: string;
            subtitle?: string | null;
            size?: ('xl' | 'lg' | 'md' | 'sm') | null;
            align?: ('left' | 'center') | null;
            color: 'base' | 'shade1' | 'shade2' | 'shade3' | 'contrast' | 'contrastShade1';
            id?: string | null;
            blockName?: string | null;
            blockType: 'title';
          }
        | {
            content: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            width: '1/2' | '3/4';
            id?: string | null;
            blockName?: string | null;
            blockType: 'text';
          }
        | {
            items: {
              photo: string | Media;
              caption?: string | null;
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'gallery';
          }
        | {
            file: string | Document;
            button: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'document';
          }
        | {
            id?: string | null;
            blockName?: string | null;
            blockType: 'donation';
          }
        | {
            youtube_id: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'youtube';
          }
        | {
            contact: string | ContactPerson;
            id?: string | null;
            blockName?: string | null;
            blockType: 'contactPersonBlock';
          }
        | {
            title: string;
            description: string;
            email: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'contactform';
          }
        | {
            text: string;
            url: string;
            id?: string | null;
            blockName?: string | null;
            blockType: 'button';
          }
        | {
            items: {
              title: string;
              image: string | Media;
              link?:
                | ({
                    relationTo: 'pages';
                    value: string | Page;
                  } | null)
                | ({
                    relationTo: 'group';
                    value: string | Group;
                  } | null);
              /**
               * Alternative zu "Verknüpfung". Nur eins von beiden kann gesetzt werden.
               */
              customLink?: string | null;
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'imageCards';
          }
        | {
            items: {
              title: string;
              content: {
                root: {
                  type: string;
                  children: {
                    type: any;
                    version: number;
                    [k: string]: unknown;
                  }[];
                  direction: ('ltr' | 'rtl') | null;
                  format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                  indent: number;
                  version: number;
                };
                [k: string]: unknown;
              };
              id?: string | null;
            }[];
            id?: string | null;
            blockName?: string | null;
            blockType: 'collapsibles';
          }
        | {
            prev?: {
              text?: string | null;
              href?: string | null;
            };
            next?: {
              text?: string | null;
              href?: string | null;
            };
            id?: string | null;
            blockName?: string | null;
            blockType: 'nextPrevButtons';
          }
        | {
            title?: string | null;
            titleColor: 'base' | 'contrast';
            backgroundColor: 'none' | 'soft' | 'off-white';
            image: string | Media;
            imagePosition: 'left' | 'right';
            text: {
              root: {
                type: string;
                children: {
                  type: any;
                  version: number;
                  [k: string]: unknown;
                }[];
                direction: ('ltr' | 'rtl') | null;
                format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
                indent: number;
                version: number;
              };
              [k: string]: unknown;
            };
            id?: string | null;
            blockName?: string | null;
            blockType: 'imageWithText';
          }
      )[]
    | null;
  updatedAt: string;
  createdAt: string;
  _status?: ('draft' | 'published') | null;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "contactPerson".
 */
export interface ContactPerson {
  id: string;
  photo?: (string | null) | Media;
  name: string;
  role?: string | null;
  email?: string | null;
  telephone?: string | null;
  updatedAt: string;
  createdAt: string;
}
/**
 * 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' | 'LANGUAGE' | 'OTHER';
  title?: string | null;
  cancelled: boolean;
  liturgicalDay?: string | null;
  celebrant?: string | null;
  description?: string | null;
  generated?: boolean | 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;
}
/**
 * Die Vermeldungen werden jeden Samstag automatisch veröffentlicht.
 *
 * 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;
}
/**
 * Der Kalender wird jeden Samstag automatisch veröffentlicht.
 *
 * 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;
  /**
   * Angepinnte Beiträge werden im Blog und auf der Startseite zuerst angezeigt.
   */
  pinned: boolean;
  content: {
    excerpt: string;
    content: (
      | {
          content: {
            root: {
              type: string;
              children: {
                type: any;
                version: number;
                [k: string]: unknown;
              }[];
              direction: ('ltr' | 'rtl') | null;
              format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
              indent: number;
              version: number;
            };
            [k: string]: unknown;
          };
          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';
        }
      | {
          id?: string | null;
          blockName?: string | null;
          blockType: 'donation';
        }
      | {
          title: string;
          description: string;
          email: string;
          id?: string | null;
          blockName?: string | null;
          blockType: 'contactform';
        }
      | {
          items: {
            photo: string | Media;
            caption?: string | null;
            id?: string | null;
          }[];
          id?: string | null;
          blockName?: string | null;
          blockType: 'gallery';
        }
      | {
          youtube_id: string;
          id?: string | null;
          blockName?: string | null;
          blockType: 'youtube';
        }
      | {
          text: string;
          url: string;
          id?: string | null;
          blockName?: string | null;
          blockType: 'button';
        }
      | {
          items: {
            title: string;
            image: string | Media;
            link?:
              | ({
                  relationTo: 'pages';
                  value: string | Page;
                } | null)
              | ({
                  relationTo: 'group';
                  value: string | Group;
                } | null);
            /**
             * Alternative zu "Verknüpfung". Nur eins von beiden kann gesetzt werden.
             */
            customLink?: string | null;
            id?: string | null;
          }[];
          id?: string | null;
          blockName?: string | null;
          blockType: 'imageCards';
        }
    )[];
  };
  configuration: {
    showOnFrontpage: boolean;
    displayFromDate?: string | null;
    displayTillDate?: string | null;
    parish?: (string | Parish)[] | null;
  };
  updatedAt: string;
  createdAt: string;
  _status?: ('draft' | 'published') | null;
}
/**
 * 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;
  title: string;
  date: string;
  endDateTime?: string | null;
  cancelled: boolean;
  location: string | Location;
  shortDescription: string;
  description: string;
  contact?: (string | null) | ContactPerson;
  rsvpLink?: string | null;
  parish?: (string | Parish)[] | null;
  group?: (string | Group)[] | null;
  photo?: (string | null) | Media;
  flyer?: (string | null) | Document;
  /**
   * Bei wiederkehrenden Veranstaltungen werden automatisch Termine für die nächsten Wochen erzeugt. Wochentag, Kalendertag und Uhrzeit werden aus dem Datumsfeld übernommen.
   */
  recurrenceType: 'none' | 'daily' | 'weekly' | 'biweekly' | 'monthlyByDate' | 'monthlyByWeekday' | 'custom';
  /**
   * Mehrere Regeln werden kombiniert (z. B. „3. Dienstag und 4. Donnerstag jeden Monat").
   */
  recurrenceRules?:
    | {
        frequency: 'daily' | 'weekly' | 'monthlyByDate' | 'monthlyByWeekday';
        weekday?: ('monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday') | null;
        weekOfMonth?: ('first' | 'second' | 'third' | 'fourth' | 'fifth' | 'last') | null;
        dayOfMonth?: number | null;
        id?: string | null;
      }[]
    | null;
  /**
   * Optional. Nach diesem Datum werden keine weiteren Termine erzeugt.
   */
  endDate?: string | null;
  updatedAt: string;
  createdAt: string;
  _status?: ('draft' | 'published') | null;
}
/**
 * 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` "eventOccurrence".
 */
export interface EventOccurrence {
  id: string;
  event: string | Event;
  date: string;
  endDateTime?: string | null;
  cancelled: boolean;
  generated?: boolean | null;
  updatedAt: string;
  createdAt: string;
}
/**
 * Dieser Bereich des Dashboards ermöglicht die umfassende Verwaltung aller veröffentlichten Kleinanzeigen für freiwillige Tätigkeiten. Hier können Administratoren Inserate einsehen, bearbeiten, veröffentlichen und entfernen, um die Qualität und Relevanz der angebotenen Möglichkeiten sicherzustellen.
 *
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "classifieds".
 */
export interface Classified {
  id: string;
  until: string;
  text: {
    root: {
      type: string;
      children: {
        type: any;
        version: number;
        [k: string]: unknown;
      }[];
      direction: ('ltr' | 'rtl') | null;
      format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
      indent: number;
      version: number;
    };
    [k: string]: unknown;
  };
  email: string;
  updatedAt: string;
  createdAt: string;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "donation-form".
 */
export interface DonationForm {
  id: string;
  photo: string | Media;
  text: {
    root: {
      type: string;
      children: {
        type: any;
        version: number;
        [k: string]: unknown;
      }[];
      direction: ('ltr' | 'rtl') | null;
      format: 'left' | 'start' | 'center' | 'right' | 'end' | 'justify' | '';
      indent: number;
      version: number;
    };
    [k: string]: unknown;
  };
  url: string;
  updatedAt: string;
  createdAt: string;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "prayers".
 */
export interface Prayer {
  id: string;
  text: string;
  updatedAt: string;
  createdAt: string;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "magazine".
 */
export interface Magazine {
  id: string;
  cover: string | Media;
  document: string | Document;
  date: string;
  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;
  parishes?: (string | Parish)[] | null;
  pages?: (string | Page)[] | 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;
  sessions?:
    | {
        id: string;
        createdAt?: string | null;
        expiresAt: string;
      }[]
    | null;
  password?: string | null;
}
/**
 * Automatisch erzeugte Suchergebnisse. Sie werden von der Website-Suche verwendet und aktualisieren sich selbst, sobald Inhalte erstellt oder geändert werden.
 *
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "search".
 */
export interface Search {
  id: string;
  title?: string | null;
  priority?: number | null;
  doc:
    | {
        relationTo: 'parish';
        value: string | Parish;
      }
    | {
        relationTo: 'pages';
        value: string | Page;
      }
    | {
        relationTo: 'blog';
        value: string | Blog;
      }
    | {
        relationTo: 'event';
        value: string | Event;
      }
    | {
        relationTo: 'group';
        value: string | Group;
      };
  updatedAt: string;
  createdAt: string;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "payload-kv".
 */
export interface PayloadKv {
  id: string;
  key: string;
  data:
    | {
        [k: string]: unknown;
      }
    | unknown[]
    | string
    | number
    | boolean
    | null;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "payload-jobs".
 */
export interface PayloadJob {
  id: string;
  /**
   * Input data provided to the job
   */
  input?:
    | {
        [k: string]: unknown;
      }
    | unknown[]
    | string
    | number
    | boolean
    | null;
  taskStatus?:
    | {
        [k: string]: unknown;
      }
    | unknown[]
    | string
    | number
    | boolean
    | null;
  completedAt?: string | null;
  totalTried?: number | null;
  /**
   * If hasError is true this job will not be retried
   */
  hasError?: boolean | null;
  /**
   * If hasError is true, this is the error that caused it
   */
  error?:
    | {
        [k: string]: unknown;
      }
    | unknown[]
    | string
    | number
    | boolean
    | null;
  /**
   * Task execution log
   */
  log?:
    | {
        executedAt: string;
        completedAt: string;
        taskSlug: 'inline' | 'generateRecurringMasses' | 'generateEventOccurrences';
        taskID: string;
        input?:
          | {
              [k: string]: unknown;
            }
          | unknown[]
          | string
          | number
          | boolean
          | null;
        output?:
          | {
              [k: string]: unknown;
            }
          | unknown[]
          | string
          | number
          | boolean
          | null;
        state: 'failed' | 'succeeded';
        error?:
          | {
              [k: string]: unknown;
            }
          | unknown[]
          | string
          | number
          | boolean
          | null;
        id?: string | null;
      }[]
    | null;
  taskSlug?: ('inline' | 'generateRecurringMasses' | 'generateEventOccurrences') | null;
  queue?: string | null;
  waitUntil?: string | null;
  processing?: boolean | null;
  meta?:
    | {
        [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-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: 'eventOccurrence';
        value: string | EventOccurrence;
      } | null)
    | ({
        relationTo: 'classifieds';
        value: string | Classified;
      } | null)
    | ({
        relationTo: 'contactPerson';
        value: string | ContactPerson;
      } | null)
    | ({
        relationTo: 'locations';
        value: string | Location;
      } | null)
    | ({
        relationTo: 'group';
        value: string | Group;
      } | null)
    | ({
        relationTo: 'donation-form';
        value: string | DonationForm;
      } | null)
    | ({
        relationTo: 'pages';
        value: string | Page;
      } | null)
    | ({
        relationTo: 'prayers';
        value: string | Prayer;
      } | null)
    | ({
        relationTo: 'magazine';
        value: string | Magazine;
      } | null)
    | ({
        relationTo: 'documents';
        value: string | Document;
      } | null)
    | ({
        relationTo: 'media';
        value: string | Media;
      } | null)
    | ({
        relationTo: 'users';
        value: string | User;
      } | null)
    | ({
        relationTo: 'search';
        value: string | Search;
      } | 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<T extends boolean = true> {
  name?: T;
  slug?: T;
  churches?: T;
  contactPersons?:
    | T
    | {
        title?: T;
        description?: T;
        id?: T;
      };
  description?: T;
  history?: T;
  content?:
    | T
    | {
        text?:
          | T
          | {
              content?: T;
              width?: T;
              id?: T;
              blockName?: T;
            };
        document?:
          | T
          | {
              file?: T;
              button?: T;
              id?: T;
              blockName?: T;
            };
        donation?:
          | T
          | {
              id?: T;
              blockName?: T;
            };
        youtube?:
          | T
          | {
              youtube_id?: T;
              id?: T;
              blockName?: T;
            };
        donationAppeal?:
          | T
          | {
              id?: T;
              blockName?: T;
            };
        imageCards?:
          | T
          | {
              items?:
                | T
                | {
                    title?: T;
                    image?: T;
                    link?: T;
                    customLink?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        title?:
          | T
          | {
              title?: T;
              subtitle?: T;
              size?: T;
              align?: T;
              color?: T;
              id?: T;
              blockName?: T;
            };
        collapsibles?:
          | T
          | {
              items?:
                | T
                | {
                    title?: T;
                    content?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        nextPrevButtons?:
          | T
          | {
              prev?:
                | T
                | {
                    text?: T;
                    href?: T;
                  };
              next?:
                | T
                | {
                    text?: T;
                    href?: T;
                  };
              id?: T;
              blockName?: T;
            };
        imageWithText?:
          | T
          | {
              title?: T;
              titleColor?: T;
              backgroundColor?: T;
              image?: T;
              imagePosition?: T;
              text?: T;
              id?: T;
              blockName?: T;
            };
      };
  contact?: T;
  photo?: T;
  gallery?:
    | T
    | {
        photo?: T;
        caption?: T;
        id?: T;
      };
  updatedAt?: T;
  createdAt?: T;
  _status?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "church_select".
 */
export interface ChurchSelect<T extends boolean = true> {
  name?: T;
  address?: T;
  recurringSchedule?:
    | T
    | {
        type?: T;
        frequency?: T;
        day?: T;
        time?: T;
        weekOfMonth?: T;
        biweeklyAnchor?: T;
        defaultCelebrant?: T;
        defaultTitle?: T;
        defaultDescription?: T;
        notes?: T;
        id?: T;
      };
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "worship_select".
 */
export interface WorshipSelect<T extends boolean = true> {
  date?: T;
  location?: T;
  type?: T;
  title?: T;
  cancelled?: T;
  liturgicalDay?: T;
  celebrant?: T;
  description?: T;
  generated?: T;
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "popePrayerIntentions_select".
 */
export interface PopePrayerIntentionsSelect<T extends boolean = true> {
  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<T extends boolean = true> {
  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<T extends boolean = true> {
  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<T extends boolean = true> {
  photo?: T;
  title?: T;
  pinned?: T;
  content?:
    | T
    | {
        excerpt?: T;
        content?:
          | T
          | {
              text?:
                | T
                | {
                    content?: T;
                    width?: T;
                    id?: T;
                    blockName?: T;
                  };
              document?:
                | T
                | {
                    file?: T;
                    button?: T;
                    id?: T;
                    blockName?: T;
                  };
              donation?:
                | T
                | {
                    id?: T;
                    blockName?: T;
                  };
              contactform?:
                | T
                | {
                    title?: T;
                    description?: T;
                    email?: T;
                    id?: T;
                    blockName?: T;
                  };
              gallery?:
                | T
                | {
                    items?:
                      | T
                      | {
                          photo?: T;
                          caption?: T;
                          id?: T;
                        };
                    id?: T;
                    blockName?: T;
                  };
              youtube?:
                | T
                | {
                    youtube_id?: T;
                    id?: T;
                    blockName?: T;
                  };
              button?:
                | T
                | {
                    text?: T;
                    url?: T;
                    id?: T;
                    blockName?: T;
                  };
              imageCards?:
                | T
                | {
                    items?:
                      | T
                      | {
                          title?: T;
                          image?: T;
                          link?: T;
                          customLink?: T;
                          id?: T;
                        };
                    id?: T;
                    blockName?: T;
                  };
            };
      };
  configuration?:
    | T
    | {
        showOnFrontpage?: T;
        displayFromDate?: T;
        displayTillDate?: T;
        parish?: T;
      };
  updatedAt?: T;
  createdAt?: T;
  _status?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "highlight_select".
 */
export interface HighlightSelect<T extends boolean = true> {
  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<T extends boolean = true> {
  title?: T;
  date?: T;
  endDateTime?: T;
  cancelled?: T;
  location?: T;
  shortDescription?: T;
  description?: T;
  contact?: T;
  rsvpLink?: T;
  parish?: T;
  group?: T;
  photo?: T;
  flyer?: T;
  recurrenceType?: T;
  recurrenceRules?:
    | T
    | {
        frequency?: T;
        weekday?: T;
        weekOfMonth?: T;
        dayOfMonth?: T;
        id?: T;
      };
  endDate?: T;
  updatedAt?: T;
  createdAt?: T;
  _status?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "eventOccurrence_select".
 */
export interface EventOccurrenceSelect<T extends boolean = true> {
  event?: T;
  date?: T;
  endDateTime?: T;
  cancelled?: T;
  generated?: T;
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "classifieds_select".
 */
export interface ClassifiedsSelect<T extends boolean = true> {
  until?: T;
  text?: T;
  email?: T;
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "contactPerson_select".
 */
export interface ContactPersonSelect<T extends boolean = true> {
  photo?: T;
  name?: T;
  role?: 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<T extends boolean = true> {
  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<T extends boolean = true> {
  photo?: T;
  name?: T;
  slug?: T;
  shortDescription?: T;
  text?: T;
  content?:
    | T
    | {
        title?:
          | T
          | {
              title?: T;
              subtitle?: T;
              size?: T;
              align?: T;
              color?: T;
              id?: T;
              blockName?: T;
            };
        text?:
          | T
          | {
              content?: T;
              width?: T;
              id?: T;
              blockName?: T;
            };
        gallery?:
          | T
          | {
              items?:
                | T
                | {
                    photo?: T;
                    caption?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        document?:
          | T
          | {
              file?: T;
              button?: T;
              id?: T;
              blockName?: T;
            };
        donation?:
          | T
          | {
              id?: T;
              blockName?: T;
            };
        youtube?:
          | T
          | {
              youtube_id?: T;
              id?: T;
              blockName?: T;
            };
        contactPersonBlock?:
          | T
          | {
              contact?: T;
              id?: T;
              blockName?: T;
            };
        contactform?:
          | T
          | {
              title?: T;
              description?: T;
              email?: T;
              id?: T;
              blockName?: T;
            };
        button?:
          | T
          | {
              text?: T;
              url?: T;
              id?: T;
              blockName?: T;
            };
        imageCards?:
          | T
          | {
              items?:
                | T
                | {
                    title?: T;
                    image?: T;
                    link?: T;
                    customLink?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        collapsibles?:
          | T
          | {
              items?:
                | T
                | {
                    title?: T;
                    content?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        nextPrevButtons?:
          | T
          | {
              prev?:
                | T
                | {
                    text?: T;
                    href?: T;
                  };
              next?:
                | T
                | {
                    text?: T;
                    href?: T;
                  };
              id?: T;
              blockName?: T;
            };
        imageWithText?:
          | T
          | {
              title?: T;
              titleColor?: T;
              backgroundColor?: T;
              image?: T;
              imagePosition?: T;
              text?: T;
              id?: T;
              blockName?: T;
            };
      };
  updatedAt?: T;
  createdAt?: T;
  _status?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "donation-form_select".
 */
export interface DonationFormSelect<T extends boolean = true> {
  photo?: T;
  text?: T;
  url?: 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;
  description?: T;
  slug?: T;
  content?:
    | T
    | {
        pageHeader?:
          | T
          | {
              title?: T;
              description?: T;
              image?: T;
              id?: T;
              blockName?: T;
            };
        text?:
          | T
          | {
              content?: T;
              width?: T;
              id?: T;
              blockName?: T;
            };
        title?:
          | T
          | {
              title?: T;
              subtitle?: T;
              size?: T;
              align?: T;
              color?: T;
              id?: T;
              blockName?: T;
            };
        section?:
          | T
          | {
              backgroundColor?: T;
              padding?: T;
              id?: T;
              blockName?: T;
            };
        gallery?:
          | T
          | {
              items?:
                | T
                | {
                    photo?: T;
                    caption?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        document?:
          | T
          | {
              file?: T;
              button?: T;
              id?: T;
              blockName?: T;
            };
        youtube?:
          | T
          | {
              youtube_id?: T;
              id?: T;
              blockName?: T;
            };
        button?:
          | T
          | {
              text?: T;
              url?: T;
              id?: T;
              blockName?: T;
            };
        contactform?:
          | T
          | {
              title?: T;
              description?: T;
              email?: T;
              id?: T;
              blockName?: T;
            };
        donation?:
          | T
          | {
              id?: T;
              blockName?: T;
            };
        banner?:
          | T
          | {
              textLine1?: T;
              textLine2?: T;
              textLine3?: T;
              backgroundColor?: T;
              backgroundImage?: T;
              backgroundPosition?: T;
              backgroundSize?: T;
              id?: T;
              blockName?: T;
            };
        mainText?:
          | T
          | {
              text?: T;
              id?: T;
              blockName?: T;
            };
        horizontalRule?:
          | T
          | {
              color?: T;
              id?: T;
              blockName?: T;
            };
        blogSlider?:
          | T
          | {
              title?: T;
              id?: T;
              blockName?: T;
            };
        collapsibleImageWithText?:
          | T
          | {
              title?: T;
              text?: T;
              image?: T;
              content?: T;
              colorStyle?: T;
              id?: T;
              blockName?: T;
            };
        imageWithText?:
          | T
          | {
              title?: T;
              titleColor?: T;
              backgroundColor?: T;
              image?: T;
              imagePosition?: T;
              text?: T;
              id?: T;
              blockName?: T;
            };
        collapsibleMapWithText?:
          | T
          | {
              title?: T;
              text?: T;
              content?: T;
              backgroundColor?: T;
              id?: T;
              blockName?: T;
            };
        collapsibles?:
          | T
          | {
              items?:
                | T
                | {
                    title?: T;
                    content?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        massTimes?:
          | T
          | {
              title?: T;
              subtitle?: T;
              range?: T;
              churches?: T;
              id?: T;
              blockName?: T;
            };
        events?:
          | T
          | {
              title?: T;
              itemsPerPage?: T;
              id?: T;
              blockName?: T;
            };
        groupEvents?:
          | T
          | {
              group?: T;
              id?: T;
              blockName?: T;
            };
        contactPersonBlock?:
          | T
          | {
              contact?: T;
              id?: T;
              blockName?: T;
            };
        imageCards?:
          | T
          | {
              items?:
                | T
                | {
                    title?: T;
                    image?: T;
                    link?: T;
                    customLink?: T;
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
        classifieds?:
          | T
          | {
              id?: T;
              blockName?: T;
            };
        nextPrevButtons?:
          | T
          | {
              prev?:
                | T
                | {
                    text?: T;
                    href?: T;
                  };
              next?:
                | T
                | {
                    text?: T;
                    href?: T;
                  };
              id?: T;
              blockName?: T;
            };
      };
  updatedAt?: T;
  createdAt?: T;
  _status?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "prayers_select".
 */
export interface PrayersSelect<T extends boolean = true> {
  text?: T;
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "magazine_select".
 */
export interface MagazineSelect<T extends boolean = true> {
  cover?: T;
  document?: T;
  date?: T;
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "documents_select".
 */
export interface DocumentsSelect<T extends boolean = true> {
  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<T extends boolean = true> {
  alt?: T;
  search?: T;
  copyrights?:
    | T
    | {
        source?: T;
        publicWithoutName?: T;
        consent?: 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<T extends boolean = true> {
  name?: T;
  roles?: T;
  groups?: T;
  parishes?: T;
  pages?: T;
  updatedAt?: T;
  createdAt?: T;
  email?: T;
  resetPasswordToken?: T;
  resetPasswordExpiration?: T;
  salt?: T;
  hash?: T;
  loginAttempts?: T;
  lockUntil?: T;
  sessions?:
    | T
    | {
        id?: T;
        createdAt?: T;
        expiresAt?: T;
      };
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "search_select".
 */
export interface SearchSelect<T extends boolean = true> {
  title?: T;
  priority?: T;
  doc?: T;
  updatedAt?: T;
  createdAt?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "payload-kv_select".
 */
export interface PayloadKvSelect<T extends boolean = true> {
  key?: T;
  data?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "payload-jobs_select".
 */
export interface PayloadJobsSelect<T extends boolean = true> {
  input?: T;
  taskStatus?: T;
  completedAt?: T;
  totalTried?: T;
  hasError?: T;
  error?: T;
  log?:
    | T
    | {
        executedAt?: T;
        completedAt?: T;
        taskSlug?: T;
        taskID?: T;
        input?: T;
        output?: T;
        state?: T;
        error?: T;
        id?: T;
      };
  taskSlug?: T;
  queue?: T;
  waitUntil?: T;
  processing?: T;
  meta?: 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;
}
/**
 * Hier können Sie die Einträge und die Reihenfolge der Hauptnavigation festlegen.
 *
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "menu".
 */
export interface Menu {
  id: string;
  leftItems: (
    | {
        text: string;
        href: string;
        type: 'default' | 'button';
        id?: string | null;
        blockName?: string | null;
        blockType: 'simple-item';
      }
    | {
        text: string;
        quote: string;
        source: string;
        groups: {
          title: string;
          items: {
            title: string;
            description: string;
            href: string;
            id?: string | null;
          }[];
          id?: string | null;
        }[];
        id?: string | null;
        blockName?: string | null;
        blockType: 'mega-menu';
      }
  )[];
  rightItems: (
    | {
        text: string;
        href: string;
        type: 'default' | 'button';
        id?: string | null;
        blockName?: string | null;
        blockType: 'simple-item';
      }
    | {
        text: string;
        quote: string;
        source: string;
        groups: {
          title: string;
          items: {
            title: string;
            description: string;
            href: string;
            id?: string | null;
          }[];
          id?: string | null;
        }[];
        id?: string | null;
        blockName?: string | null;
        blockType: 'mega-menu';
      }
  )[];
  updatedAt?: string | null;
  createdAt?: string | null;
}
/**
 * Hier können Sie die Linkgruppen im Fußzeile konfigurieren.
 *
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "footer".
 */
export interface Footer {
  id: string;
  groups?:
    | {
        title: string;
        links?:
          | {
              label: string;
              href: string;
              id?: string | null;
            }[]
          | null;
        id?: string | null;
      }[]
    | null;
  updatedAt?: string | null;
  createdAt?: string | null;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "payload-jobs-stats".
 */
export interface PayloadJobsStat {
  id: string;
  stats?:
    | {
        [k: string]: unknown;
      }
    | unknown[]
    | string
    | number
    | boolean
    | null;
  updatedAt?: string | null;
  createdAt?: string | null;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "menu_select".
 */
export interface MenuSelect<T extends boolean = true> {
  leftItems?:
    | T
    | {
        'simple-item'?:
          | T
          | {
              text?: T;
              href?: T;
              type?: T;
              id?: T;
              blockName?: T;
            };
        'mega-menu'?:
          | T
          | {
              text?: T;
              quote?: T;
              source?: T;
              groups?:
                | T
                | {
                    title?: T;
                    items?:
                      | T
                      | {
                          title?: T;
                          description?: T;
                          href?: T;
                          id?: T;
                        };
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
      };
  rightItems?:
    | T
    | {
        'simple-item'?:
          | T
          | {
              text?: T;
              href?: T;
              type?: T;
              id?: T;
              blockName?: T;
            };
        'mega-menu'?:
          | T
          | {
              text?: T;
              quote?: T;
              source?: T;
              groups?:
                | T
                | {
                    title?: T;
                    items?:
                      | T
                      | {
                          title?: T;
                          description?: T;
                          href?: T;
                          id?: T;
                        };
                    id?: T;
                  };
              id?: T;
              blockName?: T;
            };
      };
  updatedAt?: T;
  createdAt?: T;
  globalType?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "footer_select".
 */
export interface FooterSelect<T extends boolean = true> {
  groups?:
    | T
    | {
        title?: T;
        links?:
          | T
          | {
              label?: T;
              href?: T;
              id?: T;
            };
        id?: T;
      };
  updatedAt?: T;
  createdAt?: T;
  globalType?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "payload-jobs-stats_select".
 */
export interface PayloadJobsStatsSelect<T extends boolean = true> {
  stats?: T;
  updatedAt?: T;
  createdAt?: T;
  globalType?: T;
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "TaskGenerateRecurringMasses".
 */
export interface TaskGenerateRecurringMasses {
  input: {
    weeksAhead?: number | null;
    churchId?: string | null;
  };
  output: {
    created?: number | null;
    deleted?: number | null;
    skipped?: number | null;
  };
}
/**
 * This interface was referenced by `Config`'s JSON-Schema
 * via the `definition` "TaskGenerateEventOccurrences".
 */
export interface TaskGenerateEventOccurrences {
  input: {
    weeksAhead?: number | null;
    eventId?: string | null;
  };
  output: {
    created?: number | null;
    deleted?: number | null;
    skipped?: number | null;
  };
}
/**
 * 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 {}
}