import { UUID } from '@daita/relational'; import { Json } from '@daita/relational'; export declare class BaseTable { createdDate: Date; modifiedDate?: Date; } export declare class User extends BaseTable { id: UUID; username: string; password: string; lastLogin: Date; userType: UserType; userStatus: UserStatus; admin: boolean; extra: Json; extraTyped: Json<{ name: string; }>; } export declare enum UserType { Local = "local", Social = "social" } export declare enum UserStatus { Unverified = 10, Verified = 20, Certified = 21 } export declare class Role extends BaseTable { name: string; description: string | null; parentRole?: Role; } export declare class Permission extends BaseTable { name: string; } export declare class UserRole extends BaseTable { roleName: string; role: Role; userId: UUID; user: User; } export declare class RolePermission extends BaseTable { roleName: string; role: Role; permissionName: string; permission: Permission; } export declare class UserPermissions { username: string; permissionName: string; } export declare const userRules: import("@daita/relational").Rule[];