2025-10-01 19:55:38 +02:00

36 lines
2.3 KiB
TypeScript

import { MethodCallArgs } from '../../../server/v1/MethodCallArgs';
import { IResource } from '../../../resource/v1/IResource';
export declare type PrivilegeManagerCallback = (error: Error, hasAccess: boolean) => void;
export declare type PrivilegeManagerMethod = (arg: MethodCallArgs, resource: IResource, callback: PrivilegeManagerCallback) => void;
export declare type BasicPrivilege = 'all' | 'canCreate' | 'canDelete' | 'canMove' | 'canRename' | 'canAppend' | 'canWrite' | 'canRead' | 'canSource' | 'canGetMimeType' | 'canGetSize' | 'canListLocks' | 'canSetLock' | 'canRemoveLock' | 'canGetAvailableLocks' | 'canGetLock' | 'canAddChild' | 'canRemoveChild' | 'canGetChildren' | 'canSetProperty' | 'canGetProperty' | 'canGetProperties' | 'canRemoveProperty' | 'canGetCreationDate' | 'canGetLastModifiedDate' | 'canGetWebName' | 'canGetType';
export declare function requirePrivilege(privilege: string | BasicPrivilege | string[] | BasicPrivilege[], arg: MethodCallArgs, resource: IResource, callback: PrivilegeManagerCallback): void;
export interface IPrivilegeManager {
canCreate: PrivilegeManagerMethod;
canDelete: PrivilegeManagerMethod;
canMove: PrivilegeManagerMethod;
canRename: PrivilegeManagerMethod;
canAppend: PrivilegeManagerMethod;
canWrite: PrivilegeManagerMethod;
canRead: PrivilegeManagerMethod;
canSource: PrivilegeManagerMethod;
canGetMimeType: PrivilegeManagerMethod;
canGetSize: PrivilegeManagerMethod;
canListLocks: PrivilegeManagerMethod;
canSetLock: PrivilegeManagerMethod;
canRemoveLock: PrivilegeManagerMethod;
canGetAvailableLocks: PrivilegeManagerMethod;
canGetLock: PrivilegeManagerMethod;
canAddChild: PrivilegeManagerMethod;
canRemoveChild: PrivilegeManagerMethod;
canGetChildren: PrivilegeManagerMethod;
canSetProperty: PrivilegeManagerMethod;
canGetProperty: PrivilegeManagerMethod;
canGetProperties: PrivilegeManagerMethod;
canRemoveProperty: PrivilegeManagerMethod;
canGetCreationDate: PrivilegeManagerMethod;
canGetLastModifiedDate: PrivilegeManagerMethod;
canGetWebName: PrivilegeManagerMethod;
canGetType: PrivilegeManagerMethod;
}
export declare function hasNoWriteLock(arg: MethodCallArgs, resource: IResource, callback: PrivilegeManagerCallback): void;