import { Thing as Base, type ThingIdSource, type ThingSource, type ThingTableSource } from "@tai-kun/surrealdb/decodeonly-datatypes";
import { CBOR_TAG_RECORDID, type Encodable } from "./spec";
export type { ThingIdSource, ThingSource, ThingTableSource };
/**
 * [API Reference](https://tai-kun.github.io/surrealdb.js/v2/api/data/thing)
 */
export default class Thing<TTable extends ThingTableSource = ThingTableSource, TId extends ThingIdSource = ThingIdSource> extends Base<TTable, TId> implements Encodable {
    valueOf(): string;
    toString(): string;
    [Symbol.toPrimitive](hint: "default" | "string"): string;
    [Symbol.toPrimitive](hint: string): string;
    toCBOR(): [
        tag: typeof CBOR_TAG_RECORDID,
        value: [table: TTable, id: TId] | string
    ];
    toJSON(): string;
    toSurql(): string;
    toPlainObject(): {
        table: TTable;
        id: TId;
    };
}
//# sourceMappingURL=thing.d.ts.map