import { Collection } from './Collection'; import { EdgeModel } from './EdgeModel'; import { IVertex } from './IVertex'; import { IIdentityProfile } from './IIdentityProfile'; import { MongoModel } from '../mongodb/MongoModel'; export declare let EdgeSymbolKey: symbol; export declare let VertexCollectionSymbolKey: symbol; export interface VertexModelConstructor { new (): any; getType(): string; } export declare class VertexModel extends MongoModel implements IVertex { expires: Date; createdAt: Date; createdFrom: string; createdBy: IIdentityProfile; updatedAt: Date; updatedFrom: string; updatedBy: IIdentityProfile; collection(): Collection; readonly $edge: string; addEdge(label: string, model: VertexModel, meta?: any): Promise; fetch(): Promise; findEdges(): Promise>; findOutEdges(): Promise>; findFromVertices(outModelConstructor: VertexModelConstructor, label?: string): Promise>; findOutVertices(outModelConstructor: VertexModelConstructor, label?: string): Promise>; findInEdges(): Promise>; findToVertices(outModelConstructor: VertexModelConstructor, label?: string): Promise>; findInVertices(inModelConstructor: VertexModelConstructor, label?: string): Promise>; findOutTypes(label: string): Promise>; findOutLabels(inModelConstructor: VertexModelConstructor): Promise>; }