/* 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; customers: CustomerAuthOperations; }; blocks: {}; collections: { users: User; products: Product; customers: Customer; 'payload-locked-documents': PayloadLockedDocument; 'payload-preferences': PayloadPreference; 'payload-migrations': PayloadMigration; }; collectionsJoins: {}; collectionsSelect: { users: UsersSelect | UsersSelect; products: ProductsSelect | ProductsSelect; customers: CustomersSelect | CustomersSelect; 'payload-locked-documents': PayloadLockedDocumentsSelect | PayloadLockedDocumentsSelect; 'payload-preferences': PayloadPreferencesSelect | PayloadPreferencesSelect; 'payload-migrations': PayloadMigrationsSelect | PayloadMigrationsSelect; }; db: { defaultIDType: string; }; globals: {}; globalsSelect: {}; locale: 'en' | 'es' | 'de'; user: | (User & { collection: 'users'; }) | (Customer & { collection: 'customers'; }); 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; }; } export interface CustomerAuthOperations { forgotPassword: { email: string; password: string; }; login: { email: string; password: string; }; registerFirstUser: { email: string; password: string; }; unlock: { email: string; password: string; }; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "users". */ export interface User { id: string; name?: string | 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` "products". */ export interface Product { id: string; name?: string | null; /** * All pricing information is managed in Stripe and will be reflected here. */ price?: { stripePriceID?: string | null; stripeJSON?: string | null; }; stripeID?: string | null; skipSync?: boolean | null; updatedAt: string; createdAt: string; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "customers". */ export interface Customer { id: string; name?: string | null; /** * All subscriptions are managed in Stripe and will be reflected here. Use the link in the sidebar to go directly to this customer in Stripe to begin managing their subscriptions. */ subscriptions?: | { stripeSubscriptionID?: string | null; stripeProductID?: string | null; product?: (string | null) | Product; status?: | ('active' | 'canceled' | 'incomplete' | 'incomplete_expired' | 'past_due' | 'trialing' | 'unpaid') | null; id?: string | null; }[] | null; stripeID?: string | null; skipSync?: boolean | null; updatedAt: string; createdAt: string; enableAPIKey?: boolean | null; apiKey?: string | null; apiKeyIndex?: string | null; 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: 'users'; value: string | User; } | null) | ({ relationTo: 'products'; value: string | Product; } | null) | ({ relationTo: 'customers'; value: string | Customer; } | null); globalSlug?: string | null; user: | { relationTo: 'users'; value: string | User; } | { relationTo: 'customers'; value: string | Customer; }; 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; } | { relationTo: 'customers'; value: string | Customer; }; 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` "users_select". */ export interface UsersSelect { name?: 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` "products_select". */ export interface ProductsSelect { name?: T; price?: | T | { stripePriceID?: T; stripeJSON?: T; }; stripeID?: T; skipSync?: T; updatedAt?: T; createdAt?: T; } /** * This interface was referenced by `Config`'s JSON-Schema * via the `definition` "customers_select". */ export interface CustomersSelect { name?: T; subscriptions?: | T | { stripeSubscriptionID?: T; stripeProductID?: T; product?: T; status?: T; id?: T; }; stripeID?: T; skipSync?: T; updatedAt?: T; createdAt?: T; enableAPIKey?: T; apiKey?: T; apiKeyIndex?: 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' { // @ts-ignore export interface GeneratedTypes extends Config {} }