import { Concept } from "../../api/concept/Concept"; import { Type } from "../../api/concept/type/Type"; import { TypeDBTransaction } from "../../api/connection/TypeDBTransaction"; import { Label } from "../../common/Label"; import { Stream } from "../../common/util/Stream"; import { ConceptImpl } from "../../dependencies_internal"; export declare abstract class TypeImpl extends ConceptImpl implements Type { private readonly _label; private readonly _root; private readonly _abstract; protected constructor(label: Label, root: boolean, abstract: boolean); get root(): boolean; get abstract(): boolean; get label(): Label; isType(): boolean; asType(): Type; abstract delete(transaction: TypeDBTransaction): Promise; abstract isDeleted(transaction: TypeDBTransaction): Promise; abstract setLabel(transaction: TypeDBTransaction, label: string): Promise; abstract getSupertype(transaction: TypeDBTransaction): Promise; abstract getSupertypes(transaction: TypeDBTransaction): Stream; abstract getSubtypes(transaction: TypeDBTransaction): Stream; equals(concept: Concept): boolean; toString(): string; }