import { IObjectNode, IObjectType } from '@jacquesparis/objects-model';
import { EntityName } from './entity-name';
import { ObjectTypeRelations } from './object-type.model';
import { RestEntity } from './rest-entity.model';
export declare class ObjectNode extends RestEntity implements IObjectNode {
    entityName: EntityName;
    name: string;
    title: string;
    owner?: boolean;
    index?: number;
    acl?: boolean;
    tree?: boolean;
    namespace?: boolean;
    aclList?: string[];
    objectTypeId: string;
    parentNodeId: string;
    parentOwnerId: string;
    parentTreeId: string;
    parentNamespaceId: string;
    parentACLId: string;
    [prop: string]: any;
    constructor(data?: Partial<ObjectNode>);
    objectType: IObjectType;
    parentNode: IObjectNode;
    parentOwner: IObjectNode;
    parentTree: IObjectNode;
    parentNamespace: IObjectNode;
    parentACL: IObjectNode;
}
export interface ObjectNodeRelations {
    objectType: ObjectTypeRelations;
    parentNode: ObjectNodeWithRelations;
    parentOwner: ObjectNodeWithRelations;
    parentTree: ObjectNodeWithRelations;
    parentNamespace: ObjectNodeWithRelations;
    parentACL: ObjectNodeWithRelations;
}
export declare type ObjectNodeWithRelations = ObjectNode & ObjectNodeRelations;
