UNPKG

payload

Version:

Node, React, Headless CMS and Application Framework built on Next.js

88 lines 5.06 kB
import type { forgotPasswordOperation } from '../../auth/operations/forgotPassword.js'; import type { loginOperation } from '../../auth/operations/login.js'; import type { refreshOperation } from '../../auth/operations/refresh.js'; import type { CollectionSlug } from '../../index.js'; import type { PayloadRequest } from '../../types/index.js'; import type { SanitizedCollectionConfig, SelectFromCollectionSlug } from '../config/types.js'; import type { countOperation } from './count.js'; import type { countVersionsOperation } from './countVersions.js'; import type { createOperation } from './create.js'; import type { deleteOperation } from './delete.js'; import type { deleteByIDOperation } from './deleteByID.js'; import type { findOperation } from './find.js'; import type { findByIDOperation } from './findByID.js'; import type { updateOperation } from './update.js'; import type { updateByIDOperation } from './updateByID.js'; export type AfterOperationMap<TOperationGeneric extends CollectionSlug> = { count: typeof countOperation<TOperationGeneric>; countVersions: typeof countVersionsOperation<TOperationGeneric>; create: typeof createOperation<TOperationGeneric, SelectFromCollectionSlug<TOperationGeneric>>; delete: typeof deleteOperation<TOperationGeneric, SelectFromCollectionSlug<TOperationGeneric>>; deleteByID: typeof deleteByIDOperation<TOperationGeneric, SelectFromCollectionSlug<TOperationGeneric>>; find: typeof findOperation<TOperationGeneric, SelectFromCollectionSlug<TOperationGeneric>>; findByID: typeof findByIDOperation<TOperationGeneric, boolean, SelectFromCollectionSlug<TOperationGeneric>>; forgotPassword: typeof forgotPasswordOperation; login: typeof loginOperation<TOperationGeneric>; refresh: typeof refreshOperation; update: typeof updateOperation<TOperationGeneric, SelectFromCollectionSlug<TOperationGeneric>>; updateByID: typeof updateByIDOperation<TOperationGeneric, SelectFromCollectionSlug<TOperationGeneric>>; }; export type AfterOperationArg<TOperationGeneric extends CollectionSlug> = { /** The collection which this hook is being run on */ collection: SanitizedCollectionConfig; req: PayloadRequest; } & ({ args: Parameters<AfterOperationMap<TOperationGeneric>['count']>[0]; operation: 'count'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['count']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['countVersions']>[0]; operation: 'countVersions'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['countVersions']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['create']>[0]; operation: 'create'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['create']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['delete']>[0]; operation: 'delete'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['delete']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['deleteByID']>[0]; operation: 'deleteByID'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['deleteByID']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['find']>[0]; operation: 'find'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['find']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['findByID']>[0]; operation: 'findByID'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['findByID']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['forgotPassword']>[0]; operation: 'forgotPassword'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['forgotPassword']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['login']>[0]; operation: 'login'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['login']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['refresh']>[0]; operation: 'refresh'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['refresh']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['update']>[0]; operation: 'update'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['update']>>; } | { args: Parameters<AfterOperationMap<TOperationGeneric>['updateByID']>[0]; operation: 'updateByID'; result: Awaited<ReturnType<AfterOperationMap<TOperationGeneric>['updateByID']>>; }); type OperationResult<TOperationGeneric extends CollectionSlug, O extends keyof AfterOperationMap<TOperationGeneric>> = Awaited<ReturnType<AfterOperationMap<TOperationGeneric>[O]>>; export declare const buildAfterOperation: <TOperationGeneric extends CollectionSlug, O extends keyof AfterOperationMap<TOperationGeneric> = keyof AfterOperationMap<TOperationGeneric>>(operationArgs: { operation: O; } & Omit<AfterOperationArg<TOperationGeneric>, "req">) => Promise<any | OperationResult<TOperationGeneric, O>>; export {}; //# sourceMappingURL=utils.d.ts.map