import { A as AbstractService, N as NextRef, P as PreviousRef } from './AbstractService-Cew0PD0L.js'; import { F as FeatureInterface } from './feature.interface-BO25VLlx.js'; import { e as RoleInterface, U as UserInterface, f as UserInput, c as CompanyInterface, b as CompanyInput, C as ContentInterface, N as NotificationInterface } from './notification.interface-DYF56CtE.js'; import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from './ApiDataInterface-BcZeXy5X.js'; import { A as AuthInput, b as AuthInterface } from './auth.interface-B6ZQLGjS.js'; declare class FeatureService extends AbstractService { static findMany(params: { companyId?: string; search?: string; next?: NextRef; }): Promise; } declare class RoleService extends AbstractService { static findById(params: { roleId: string; }): Promise; static findAllRoles(params: { search?: string; next?: NextRef; }): Promise; static findAllRolesByUser(params: { userId: string; search?: string; next?: NextRef; prev?: PreviousRef; }): Promise; static findAllRolesUserNotIn(params: { userId: string; search?: string; next?: NextRef; prev?: PreviousRef; }): Promise; static addUserToRole(params: { userId: string; roleId: string; }): Promise; static removeUserFromRole(params: { userId: string; roleId: string; }): Promise; static create(params: { roleId: string; name: string; description?: string; }): Promise; static update(params: { roleId: string; name: string; description?: string; }): Promise; static delete(params: { roleId: string; }): Promise; } declare class UserService extends AbstractService { static findFullUser(): Promise; static findById(params: { userId: string; }): Promise; static findByEmail(params: { email: string; }): Promise; static findMany(params: { roleId?: string; search?: string; fetchAll?: boolean; includeDeleted?: boolean; next?: NextRef; prev?: PreviousRef; }): Promise; static findManyByContentIds(params: { contentIds: string[]; search?: string; next?: NextRef; prev?: PreviousRef; }): Promise; static findRelevant(params: { id: string; next?: NextRef; prev?: PreviousRef; }): Promise; static findManyForAmin(params: { companyId?: string; search?: string; next?: NextRef; prev?: PreviousRef; }): Promise; static findAllUsers(params: { companyId: string; search?: string; limitToRoles?: string[]; isDeleted?: boolean; next?: NextRef; prev?: PreviousRef; }): Promise; static findAllUsersByRole(params: { roleId: string; search?: string; next?: NextRef; prev?: PreviousRef; }): Promise; static findAllUsersNotInRole(params: { roleId: string; search?: string; next?: NextRef; prev?: PreviousRef; }): Promise; static create(params: UserInput): Promise; static reactivate(params: { userId: string; }): Promise; static sendInvitation(params: { userId: string; companyId?: string; }): Promise; static update(params: UserInput): Promise; static patch(params: { id: string; } & Partial>): Promise; static patchAvatar(params: { id: string; avatar: string; }): Promise; static patchRate(params: UserInput): Promise; static delete(params: { userId: string; companyId: string; }): Promise; } interface TwoFactorChallengeInterface extends ApiDataInterface { get pendingToken(): string; get availableMethods(): ("totp" | "passkey" | "backup")[]; get expiresAt(): Date; } declare class AuthService extends AbstractService { static login(params: { email: string; password: string; language?: string; }): Promise; static logout(params?: { language?: string; }): Promise; static initialiseForgotPassword(params: { email: string; language?: string; }): Promise; static register(params: AuthInput): Promise; static activate(params: { activationCode: string; }): Promise; static validateCode(params: { code: string; language?: string; }): Promise; static resetPassword(params: { code: string; password: string; }): Promise; static acceptInvitation(params: { code: string; password: string; }): Promise; static findToken(params: { tokenCode: string; }): Promise; static saveToken(params: { dehydratedAuth: JsonApiHydratedDataInterface; }): Promise; static completeOAuthRegistration(params: { pendingId: string; termsAcceptedAt: string; marketingConsent: boolean; marketingConsentAt: string | null; }): Promise<{ code: string; }>; } declare class CompanyService extends AbstractService { static findOne(params: { companyId: string; }): Promise; static findMany(params: { search?: string; next?: NextRef; }): Promise; static delete(params: { companyId: string; }): Promise; static selfDelete(params: { companyId: string; }): Promise; static create(params: CompanyInput): Promise; static update(params: CompanyInput): Promise; static updateConfigurations(params: CompanyInput): Promise; static activateLicense(params: CompanyInput): Promise; } declare class ContentService extends AbstractService { static findMany(params: { contentIds?: string[]; search?: string; fetchAll?: boolean; next?: NextRef; prev?: PreviousRef; }): Promise; static findRelevant(params: { id: string; next?: NextRef; prev?: PreviousRef; }): Promise; static findManyByAuthor(params: { userId: string; search?: string; fetchAll?: boolean; next?: NextRef; prev?: PreviousRef; }): Promise; } declare class NotificationService extends AbstractService { static findMany(params: { isArchived?: boolean; next?: NextRef; }): Promise; static markAsRead(params: { data: any; }): Promise; static archive(params: { id: string; }): Promise; } declare class PushService extends AbstractService { static register(params: { data: any; }): Promise; } type S3Input = { key: string; contentType?: string; }; interface S3Interface extends ApiDataInterface { get url(): string; get headers(): Record; } declare class S3Service extends AbstractService { static getPreSignedUrl(params: { key: string; contentType: string; isPublic?: boolean; }): Promise; static getSignedUrl(params: { key: string; isPublic?: boolean; }): Promise; static deleteFile(params: { key: string; }): Promise; } export { AuthService as A, CompanyService as C, FeatureService as F, NotificationService as N, PushService as P, RoleService as R, S3Service as S, type TwoFactorChallengeInterface as T, UserService as U, ContentService as a, type S3Input as b, type S3Interface as c };