@paroicms/server
Version:
The ParoiCMS server
42 lines (41 loc) • 2.56 kB
TypeScript
import { type Account, type AuthenticatedAccount } from "../../common/data-format.js";
import type { AccountRow } from "../../connector/row-types.js";
import type { SiteContext } from "../../site-context/site-context.types.js";
import type { InteractiveLoginMethod } from "../auth/auth.types.js";
export declare function findAccountByIdAndEmail(siteContext: Pick<SiteContext, "cn">, payload: {
id: string;
email: string;
}): Promise<AccountRow>;
export declare function findAccountByEmail(siteContext: Pick<SiteContext, "cn">, email: string): Promise<AccountRow | undefined>;
export declare function getAccount(siteContext: SiteContext, id: string): Promise<Account>;
export declare function getAuthenticatedAccount(siteContext: SiteContext, id: string): Promise<AuthenticatedAccount>;
export declare function getAllAccounts(siteContext: SiteContext): Promise<Account[]>;
export interface AccountPreferencesInput {
language?: string;
currentAuthorNodeId?: string;
}
export declare function setAccountPreferences(siteContext: SiteContext, accountId: string, values: AccountPreferencesInput): Promise<void>;
export declare function updateAccountLoginMethod(siteContext: Pick<SiteContext, "cn">, accountId: string, loginMethod: InteractiveLoginMethod): Promise<void>;
export declare function updateAccountActive(siteContext: Pick<SiteContext, "cn">, accountId: string, active: boolean): Promise<void>;
export interface CreateAccountInput {
email: string;
language: string;
name?: string;
accountType: "local" | "google";
roles: string[];
}
export declare function createAccount(siteContext: SiteContext, payload: CreateAccountInput): Promise<Account>;
export declare function insertSpecialAccount(siteContext: Pick<SiteContext, "cn">, payload: {
email: string;
name: string;
loginMethod: "localDev" | "platformAdmin";
}): Promise<string>;
export interface UpdateAccountInput {
email?: string;
name?: string;
}
export declare function updateAccount(siteContext: SiteContext, accountId: string, payload: UpdateAccountInput): Promise<Account>;
export declare function deleteAccount(siteContext: SiteContext, accountId: string): Promise<void>;
export declare function isAccountReferenced(siteContext: SiteContext, accountId: string): Promise<boolean>;
export declare function resetAccountPassword(siteContext: SiteContext, accountId: string): Promise<void>;
export declare function changeOwnPassword(siteContext: SiteContext, accountId: string, currentPassword: string, newPassword: string): Promise<void>;