@paroicms/server
Version:
The ParoiCMS server
15 lines (14 loc) • 758 B
TypeScript
import type { LoginMethod } from "@paroicms/public-anywhere-lib";
import { type PaHttpContext } from "@paroicms/public-server-lib";
import type { MigrationSiteContext, SiteContext } from "../../site-context/site-context.types.js";
export interface AuthorizedAccount {
id: string;
accountId: string;
email: string;
fqdn: string;
loginMethod: LoginMethod;
roles: string[];
permissions: string[];
}
export declare function permissionGuard(siteContext: SiteContext | MigrationSiteContext, httpContext: PaHttpContext, requiredPermission: string): Promise<AuthorizedAccount>;
export declare function permissionPatGuard(siteContext: Pick<SiteContext, "cn" | "fqdn">, pat: string, requiredPermission: string): Promise<AuthorizedAccount>;