import type { Express, Router } from 'express'; import type { ExecutionResult, GraphQLSchema, ValidationRule } from 'graphql'; import type { OperationArgs, Request as graphQLRequest } from 'graphql-http/lib/handler'; import type { SendMailOptions } from 'nodemailer'; import type pino from 'pino'; import type { DatabaseAdapter, GeneratedTypes } from '.'; import type { Result as ForgotPasswordResult } from './auth/operations/forgotPassword'; import type { Options as ForgotPasswordOptions } from './auth/operations/local/forgotPassword'; import type { Options as LoginOptions } from './auth/operations/local/login'; import type { Options as ResetPasswordOptions } from './auth/operations/local/resetPassword'; import type { Options as UnlockOptions } from './auth/operations/local/unlock'; import type { Options as VerifyEmailOptions } from './auth/operations/local/verifyEmail'; import type { Result as LoginResult } from './auth/operations/login'; import type { Result as ResetPasswordResult } from './auth/operations/resetPassword'; import type { BulkOperationResult, Collection } from './collections/config/types'; import type { Options as CountOptions } from './collections/operations/local/count'; import type { Options as CreateOptions } from './collections/operations/local/create'; import type { ByIDOptions as DeleteByIDOptions, ManyOptions as DeleteManyOptions } from './collections/operations/local/delete'; import type { Options as FindOptions } from './collections/operations/local/find'; import type { Options as FindByIDOptions } from './collections/operations/local/findByID'; import type { Options as FindVersionByIDOptions } from './collections/operations/local/findVersionByID'; import type { Options as FindVersionsOptions } from './collections/operations/local/findVersions'; import type { Options as RestoreVersionOptions } from './collections/operations/local/restoreVersion'; import type { ByIDOptions as UpdateByIDOptions, ManyOptions as UpdateManyOptions } from './collections/operations/local/update'; import type { EmailOptions, InitOptions, SanitizedConfig } from './config/types'; import type { PaginatedDocs } from './database/types'; import type { BuildEmailResult } from './email/types'; import type { PayloadAuthenticate } from './express/middleware/authenticate'; import type { ErrorHandler } from './express/middleware/errorHandler'; import type { Globals } from './globals/config/types'; import type { Options as FindGlobalOptions } from './globals/operations/local/findOne'; import type { Options as FindGlobalVersionByIDOptions } from './globals/operations/local/findVersionByID'; import type { Options as FindGlobalVersionsOptions } from './globals/operations/local/findVersions'; import type { Options as RestoreGlobalVersionOptions } from './globals/operations/local/restoreVersion'; import type { Options as UpdateGlobalOptions } from './globals/operations/local/update'; import type { TypeWithVersion } from './versions/types'; import { decrypt, encrypt } from './auth/crypto'; /** * @description Payload */ export declare class BasePayload { Mutation: { fields: { [key: string]: any; }; name: string; }; Query: { fields: { [key: string]: any; }; name: string; }; authenticate: PayloadAuthenticate; collections: { [slug: number | string | symbol]: Collection; }; config: SanitizedConfig; /** * @description Performs count operation * @param options * @returns count of documents satisfying query */ count: (options: CountOptions) => Promise<{ totalDocs: number; }>; /** * @description Performs create operation * @param options * @returns created document */ create: (options: CreateOptions) => Promise; db: DatabaseAdapter; decrypt: typeof decrypt; email: BuildEmailResult; emailOptions: EmailOptions; encrypt: typeof encrypt; errorHandler: ErrorHandler; express?: Express; extensions: (args: { args: OperationArgs; req: graphQLRequest; result: ExecutionResult; }) => Promise; /** * @description Find documents with criteria * @param options * @returns documents satisfying query */ find: (options: FindOptions) => Promise>; findByID: (options: FindByIDOptions) => Promise; findGlobal: (options: FindGlobalOptions) => Promise; /** * @description Find global version by ID * @param options * @returns global version with specified ID */ findGlobalVersionByID: (options: FindGlobalVersionByIDOptions) => Promise>; /** * @description Find global versions with criteria * @param options * @returns versions satisfying query */ findGlobalVersions: (options: FindGlobalVersionsOptions) => Promise>>; /** * @description Find version by ID * @param options * @returns version with specified ID */ findVersionByID: (options: FindVersionByIDOptions) => Promise>; /** * @description Find versions with criteria * @param options * @returns versions satisfying query */ findVersions: (options: FindVersionsOptions) => Promise>>; forgotPassword: (options: ForgotPasswordOptions) => Promise; getAPIURL: () => string; getAdminURL: () => string; globals: Globals; local: boolean; logger: pino.Logger; login: (options: LoginOptions) => Promise<{ user: TGeneratedTypes["collections"][T]; } & LoginResult>; /** * @description Find document by ID * @param options * @returns document with specified ID */ resetPassword: (options: ResetPasswordOptions) => Promise; /** * @description Restore global version by ID * @param options * @returns version with specified ID */ restoreGlobalVersion: (options: RestoreGlobalVersionOptions) => Promise; /** * @description Restore version by ID * @param options * @returns version with specified ID */ restoreVersion: (options: RestoreVersionOptions) => Promise; router?: Router; schema: GraphQLSchema; secret: string; sendEmail: (message: SendMailOptions) => Promise; types: { arrayTypes: any; blockInputTypes: any; blockTypes: any; fallbackLocaleInputType?: any; groupTypes: any; localeInputType?: any; }; unlock: (options: UnlockOptions) => Promise; updateGlobal: (options: UpdateGlobalOptions) => Promise; validationRules: (args: OperationArgs) => ValidationRule[]; verifyEmail: (options: VerifyEmailOptions) => Promise; versions: { [slug: string]: any; }; /** * @description delete one or more documents * @param options * @returns Updated document(s) */ delete(options: DeleteByIDOptions): Promise; delete(options: DeleteManyOptions): Promise>; /** * @description Initializes Payload * @param options */ init(options: InitOptions): Promise; update(options: UpdateManyOptions): Promise>; /** * @description Update one or more documents * @param options * @returns Updated document(s) */ update(options: UpdateByIDOptions): Promise; } export type Payload = BasePayload; export declare const getPayload: (options: InitOptions) => Promise; //# sourceMappingURL=mzinga.d.ts.map