import { AttributeType as AttributeTypeProto } from "typedb-protocol/proto/concept"; import { Attribute } from "../../api/concept/thing/Attribute"; import { AttributeType } from "../../api/concept/type/AttributeType"; import { ThingType } from "../../api/concept/type/ThingType"; import { TypeDBTransaction } from "../../api/connection/TypeDBTransaction"; import { Stream } from "../../common/util/Stream"; import { ThingTypeImpl } from "../../dependencies_internal"; import { Concept } from "../../api/concept/Concept"; import { Value } from "../../api/concept/value/Value"; import Annotation = ThingType.Annotation; import Transitivity = Concept.Transitivity; import ValueType = Concept.ValueType; export declare class AttributeTypeImpl extends ThingTypeImpl implements AttributeType { private readonly _valueType; constructor(name: string, root: boolean, abstract: boolean, valueType: Concept.ValueType); protected get className(): string; get valueType(): Concept.ValueType; isAttributeType(): boolean; asAttributeType(): AttributeType; isDeleted(transaction: TypeDBTransaction): Promise; put(transaction: TypeDBTransaction, value: Value): Promise; putBoolean(transaction: TypeDBTransaction, value: boolean): Promise; putLong(transaction: TypeDBTransaction, value: number): Promise; putDouble(transaction: TypeDBTransaction, value: number): Promise; putString(transaction: TypeDBTransaction, value: string): Promise; putDateTime(transaction: TypeDBTransaction, value: Date): Promise; get(transaction: TypeDBTransaction, value: Value): Promise; getBoolean(transaction: TypeDBTransaction, value: boolean): Promise; getLong(transaction: TypeDBTransaction, value: number): Promise; getDouble(transaction: TypeDBTransaction, value: number): Promise; getString(transaction: TypeDBTransaction, value: string): Promise; getDateTime(transaction: TypeDBTransaction, value: Date): Promise; getSupertype(transaction: TypeDBTransaction): Promise; setSupertype(transaction: TypeDBTransaction, superAttributeType: AttributeType): Promise; getSupertypes(transaction: TypeDBTransaction): Stream; getSubtypes(transaction: TypeDBTransaction): Stream; getSubtypes(transaction: TypeDBTransaction, valueType: ValueType): Stream; getSubtypes(transaction: TypeDBTransaction, transitivity: Transitivity): Stream; getSubtypes(transaction: TypeDBTransaction, valueType: ValueType, transitivity: Transitivity): Stream; getInstances(transaction: TypeDBTransaction): Stream; getInstances(transaction: TypeDBTransaction, transitivity: Transitivity): Stream; getOwners(transaction: TypeDBTransaction): Stream; getOwners(transaction: TypeDBTransaction, annotations: Annotation[]): Stream; getOwners(transaction: TypeDBTransaction, transitivity: Transitivity): Stream; getOwners(transaction: TypeDBTransaction, annotations: Annotation[], transitivity: Transitivity): Stream; getRegex(transaction: TypeDBTransaction): Promise; setRegex(transaction: TypeDBTransaction, regex: string): Promise; unsetRegex(transaction: TypeDBTransaction): Promise; } export declare namespace AttributeTypeImpl { function ofAttributeTypeProto(proto: AttributeTypeProto): AttributeType; }