payload
Version:
Node, React, Headless CMS and Application Framework built on Next.js
30 lines • 1.42 kB
TypeScript
import type { AuthOperationsFromCollectionSlug, Collection, DataFromCollectionSlug } from '../../collections/config/types.js';
import type { AuthCollectionSlug } from '../../index.js';
import type { PayloadRequest } from '../../types/index.js';
export type LoginResult<TSlug extends AuthCollectionSlug> = {
exp?: number;
token?: string;
user?: DataFromCollectionSlug<TSlug>;
};
export type Arguments<TSlug extends AuthCollectionSlug> = {
collection: Collection;
data: AuthOperationsFromCollectionSlug<TSlug>['login'];
depth?: number;
overrideAccess?: boolean;
req: PayloadRequest;
showHiddenFields?: boolean;
};
type CheckLoginPermissionArgs<TSlug extends AuthCollectionSlug> = {
loggingInWithUsername?: boolean;
req: PayloadRequest;
user: DataFromCollectionSlug<TSlug>;
};
/**
* Throws an error if the user is locked or does not exist.
* This does not check the login attempts, only the lock status. Whoever increments login attempts
* is responsible for locking the user properly, not whoever checks the login permission.
*/
export declare const checkLoginPermission: <TSlug extends AuthCollectionSlug>({ loggingInWithUsername, req, user, }: CheckLoginPermissionArgs<TSlug>) => void;
export declare const loginOperation: <TSlug extends AuthCollectionSlug>(incomingArgs: Arguments<TSlug>) => Promise<LoginResult<TSlug>>;
export {};
//# sourceMappingURL=login.d.ts.map