import { ResourceTesterOptions, ResourceTesterProducer, ResourceTesterTestCallback } from './Types';
import { IResource } from '../../IResource';
import * as actions from './Actions';
import * as children from './Children';
import * as content from './Content';
import * as locks from './Locks';
import * as properties from './Properties';
import * as stdMetaData from './StdMetaData';
export declare class ResourceTester<T extends IResource> {
    options: ResourceTesterOptions;
    producer: ResourceTesterProducer<T>;
    protected static uuid: number;
    constructor(options: ResourceTesterOptions, producer: ResourceTesterProducer<T>);
    protected uuid(): number;
    protected multiple(callback: ResourceTesterTestCallback, nb: number): ResourceTesterTestCallback;
    run(callback: (results: any) => void): void;
    protected create: typeof actions.create;
    protected delete: typeof actions.deleteResource;
    protected moveTo: typeof actions.moveTo;
    protected rename: typeof actions.rename;
    protected writeRead: typeof content.writeRead;
    protected mimeType: typeof content.mimeType;
    protected size: typeof content.size;
    protected lock: typeof locks.lock;
    protected addChild: typeof children.addChild;
    protected removeChild: typeof children.removeChild;
    protected getChildren: typeof children.getChildren;
    protected setProperty: typeof properties.setProperty;
    protected removeProperty: typeof properties.removeProperty;
    protected getProperties: typeof properties.getProperties;
    protected creationDate: typeof stdMetaData.creationDate;
    protected lastModifiedDate: typeof stdMetaData.lastModifiedDate;
    protected webName: typeof stdMetaData.webName;
    protected type: typeof stdMetaData.type;
}
