/// <reference types="express" />
import { Response } from '@loopback/rest';
import { ObjectNode } from '../models';
import { CurrentContext } from '../services/application.service';
import { ObjectNodeService } from '../services/object-node/object-node.service';
import { ActionEntityService } from './../services/action-entity/action-entity.service';
import { ObjectNodeContentService } from './../services/object-node/object-node-content.service';
export declare class ObjectNodeController {
    objectNodeService: ObjectNodeService;
    objectNodeContentService: ObjectNodeContentService;
    actionEntityService: ActionEntityService;
    constructor(objectNodeService: ObjectNodeService, objectNodeContentService: ObjectNodeContentService, actionEntityService: ActionEntityService);
    create(objectNode: Omit<ObjectNode, 'id'>, ctx: CurrentContext): Promise<ObjectNode>;
    updateById(id: string, objectNode: ObjectNode, ctx: CurrentContext): Promise<ObjectNode>;
    deleteById(id: string, ctx: CurrentContext): Promise<void>;
    downloadFile(id: string, contentType: string, contentId: string, response: Response, ctx: CurrentContext): Promise<Response>;
    findById(id: string, ctx: CurrentContext): Promise<ObjectNode>;
    findOwnerTree(ownerType: string, ownerName: string, ctx: CurrentContext): Promise<ObjectNode>;
    findTree(ownerType: string, ownerName: string, namespaceType: string, namespaceName: string, treeType: string, treeName: string, ctx: CurrentContext): Promise<ObjectNode>;
    findNamespaceTree(ownerType: string, ownerName: string, namespaceType: string, namespaceName: string, ctx: CurrentContext): Promise<ObjectNode>;
    findNode(ownerType: string, ownerName: string, namespaceType: string, namespaceName: string, treeType: string, treeName: string, nodeType: string, nodeName: string, ctx: CurrentContext): Promise<ObjectNode>;
}
