/// import { IResource, ReturnCallback, SimpleCallback, Return2Callback, ResourceType, ResourcePropertyValue } from '../IResource'; import { Readable, Writable } from 'stream'; import { FSManager, FSPath } from '../../../manager/v1/FSManager'; import { RequestContext, MethodCallArgs } from '../../../server/v1/MethodCallArgs'; import { LockKind } from '../lock/LockKind'; import { Lock } from '../lock/Lock'; export interface IWrappableResource extends IResource { parent: IResource; fsManager: FSManager; create(callback: SimpleCallback, ctx?: RequestContext, data?: T): any; delete(callback: SimpleCallback, ctx?: RequestContext, data?: T): any; moveTo(parent: IResource, newName: string, overwrite: boolean, callback: SimpleCallback, ctx?: RequestContext, data?: T): any; rename(newName: string, callback: Return2Callback, ctx?: RequestContext, data?: T): any; write(targetSource: boolean, callback: ReturnCallback, finalSize?: number, ctx?: RequestContext, data?: T): any; read(targetSource: boolean, callback: ReturnCallback, ctx?: RequestContext, data?: T): any; mimeType(targetSource: boolean, callback: ReturnCallback, ctx?: RequestContext, data?: T): any; size(targetSource: boolean, callback: ReturnCallback, ctx?: RequestContext, data?: T): any; getLocks(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; setLock(lock: Lock, callback: SimpleCallback, ctx?: RequestContext, data?: T): any; removeLock(uuid: string, callback: ReturnCallback, ctx?: RequestContext, data?: T): any; getAvailableLocks(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; getLock(uuid: string, callback: ReturnCallback, ctx?: RequestContext, data?: T): any; addChild(resource: IResource, callback: SimpleCallback, ctx?: RequestContext, data?: T): any; removeChild(resource: IResource, callback: SimpleCallback, ctx?: RequestContext, data?: T): any; getChildren(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; setProperty(name: string, value: ResourcePropertyValue, callback: SimpleCallback, ctx?: RequestContext, data?: T): any; getProperty(name: string, callback: ReturnCallback, ctx?: RequestContext, data?: T): any; removeProperty(name: string, callback: SimpleCallback, ctx?: RequestContext, data?: T): any; getProperties(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; creationDate(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; lastModifiedDate(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; webName(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; displayName?(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; type(callback: ReturnCallback, ctx?: RequestContext, data?: T): any; gateway?(arg: RequestContext, path: FSPath, callback: (error: Error, resource?: IResource) => void): any; } export declare class SimpleResourceWrapper implements IResource { resource: IWrappableResource; data?: T; get fsManager(): FSManager; set fsManager(fsManager: FSManager); get parent(): IResource; set parent(parent: IResource); get _isWrapper(): boolean; constructor(resource: IWrappableResource, data?: T); create(callback: SimpleCallback): void; delete(callback: SimpleCallback): void; moveTo(parent: IResource, newName: string, overwrite: boolean, callback: SimpleCallback): void; rename(newName: string, callback: Return2Callback): void; write(targetSource: boolean, callback: ReturnCallback, finalSize?: number): void; read(targetSource: boolean, callback: ReturnCallback): void; mimeType(targetSource: boolean, callback: ReturnCallback): void; size(targetSource: boolean, callback: ReturnCallback): void; getLocks(callback: ReturnCallback): void; setLock(lock: Lock, callback: SimpleCallback): void; removeLock(uuid: string, callback: ReturnCallback): void; getAvailableLocks(callback: ReturnCallback): void; getLock(uuid: string, callback: ReturnCallback): void; addChild(resource: IResource, callback: SimpleCallback): void; removeChild(resource: IResource, callback: SimpleCallback): void; getChildren(callback: ReturnCallback): void; setProperty(name: string, value: ResourcePropertyValue, callback: SimpleCallback): void; getProperty(name: string, callback: ReturnCallback): void; removeProperty(name: string, callback: SimpleCallback): void; getProperties(callback: ReturnCallback): void; creationDate(callback: ReturnCallback): void; lastModifiedDate(callback: ReturnCallback): void; webName(callback: ReturnCallback): void; type(callback: ReturnCallback): void; displayName(callback: ReturnCallback): void; get gateway(): (arg: MethodCallArgs, path: FSPath, callback: (error: Error, resource?: IResource) => void) => any; protected _invoke(name: string, args: any[]): void; } export declare class ResourceWrapper extends SimpleResourceWrapper { constructor(resource: IWrappableResource, ctx?: RequestContext, data?: T); protected _invoke(name: string, args: any[]): void; }