UNPKG

@awhere/api

Version:

The awesome aWhere API for JavaScript.

91 lines (90 loc) 3.74 kB
import { AccessRole, IItem, IUser } from '@awhere/interfaces'; import PrototypeBase from '../PrototypeBase'; import { Watcher } from '../Watcher'; export default class ItemBase extends PrototypeBase implements IItem { static generateId(): string; protected _name: string; get name(): string; set name(value: string); protected _description?: string; get description(): string | undefined; set description(value: string | undefined); protected _type: IItem['type']; get type(): IItem['type']; set type(value: IItem['type']); protected _subtype?: IItem['subtype']; get subtype(): IItem['subtype']; set subtype(value: IItem['subtype']); protected _owner: IUser | string; get owner(): IUser | string; set owner(value: IUser | string); protected _parent?: IItem['parent']; get parent(): IItem['parent']; set parent(value: IItem['parent']); protected _permission: IItem['permission']; get permission(): IItem['permission']; set permission(value: IItem['permission']); protected _thumbnail?: IItem['thumbnail']; get thumbnail(): IItem['thumbnail']; set thumbnail(value: IItem['thumbnail']); protected _progress?: IItem['progress']; get progress(): IItem['progress']; set progress(value: IItem['progress']); protected _trashed?: IItem['trashed']; get trashed(): IItem['trashed']; set trashed(value: IItem['trashed']); protected _lastModified?: IItem['lastModified']; get lastModified(): IItem['lastModified']; set lastModified(value: IItem['lastModified']); protected _deletable?: IItem['deletable']; get deletable(): IItem['deletable']; set deletable(value: IItem['deletable']); protected _hidden?: IItem['hidden']; get hidden(): IItem['hidden']; set hidden(value: IItem['hidden']); protected _accessRole: AccessRole | keyof typeof AccessRole | undefined; get accessRole(): AccessRole | keyof typeof AccessRole | undefined; protected _importable?: IItem['importable']; get importable(): IItem['importable']; protected _exportable?: IItem['exportable']; get exportable(): IItem['exportable']; protected _executable?: IItem['executable']; get executable(): IItem['executable']; private _isNew; constructor(props?: IItem); isOwner(profile: IUser): boolean; getAccessRole(user?: IUser | string): AccessRole | keyof typeof AccessRole | undefined; save(): Promise<any>; delete(): Promise<any>; toJSON(): { _id: string; name: string; description: string | undefined; type: string | undefined; subtype: string | undefined; owner: string | undefined; parent: string | undefined; permission: import("@awhere/interfaces").IPermission | undefined; thumbnail: string | undefined; progress: "inprogress" | "done" | import("@awhere/interfaces").Progress | undefined; trashed: boolean | undefined; lastModified: string | undefined; deletable: boolean | undefined; hidden: boolean | undefined; createdAt: string | undefined; createdBy: string | undefined; updatedAt: string | undefined; updatedBy: string | undefined; deleted: boolean; deletedAt: string | undefined; deletedBy: string | undefined; props: any; extendedProps: any; organization: string | undefined; accessRole: "owner" | "organizer" | "itemOrganizer" | "writer" | "commenter" | "reader" | AccessRole | undefined; importable: boolean | undefined; exportable: boolean | undefined; executable: boolean | undefined; }; watch(): Promise<Watcher>; }