@stackend/api
Version:
JS bindings to api.stackend.com
74 lines • 1.95 kB
TypeScript
import { User } from './index';
export declare const CMS_COMPONENT_CLASS = "se.josh.xcap.cms.CmsManager";
/**
* Privilege types (new enum based version)
*/
export declare enum Privilege {
VISITOR = "VISITOR",
IDENTIFIED = "IDENTIFIED",
VERIFIED = "VERIFIED",
BLOCKED = "BLOCKED",
TRUSTED = "TRUSTED",
ADMIN = "ADMIN",
SUPER_ADMIN = "SUPER_ADMIN"
}
export declare enum PrivilegeTypeId {
VISITOR = 1,
IDENTIFIED = 2,
VERIFIED = 4,
BLOCKED = 8,
TRUSTED = 16,
ADMIN = 32,
SUPER_ADMIN = 64
}
/**
* Privilege types (old id based version)
*/
export declare const PRIVILEGE_TYPE_IDS: {
VISITOR: number;
IDENTIFIED: number;
VERIFIED: number;
BLOCKED: number;
TRUSTED: number;
ADMIN: number;
SUPER_ADMIN: number;
};
export declare type PrivilegeTypeIds = 1 | 2 | 4 | 8 | 16 | 32 | 64;
/**
* Get the name of a privilege type
*/
export declare function getPrivilegeName(privilegeTypeId: number): string;
/**
* Describes the user access to an object
*/
export interface AuthObject {
/** Users privilege */
userPrivilege: Privilege;
/** Is comment allowed? */
comment: boolean;
/** Is create allowed? */
create: boolean;
/** Is moderate allowed? */
moderate: boolean;
/** Is read allowed? */
read: boolean;
/** Is post moderation required? */
postModerateRequired: boolean;
/** Will objects caught by the text filter cause it to be pre-moderated? */
textFilteredPre: boolean;
/** Is text filtering required? */
textFilteringRequired: boolean;
/** Rule in effect */
ruleId: number;
}
export declare function isSuperUser({ user }: {
user: User | null;
}): boolean;
export declare function isAdminUser({ user }: {
user: User | null;
}): boolean;
/**
* Default AuthObject for visitors
*/
export declare const VISITOR_READ_ONLY_AUTH_OBJECT: AuthObject;
//# sourceMappingURL=privileges.d.ts.map