import type { Nullable, StringOrObject } from "@joookiwi/type"; import type { Enumerable } from "./Enumerable"; import type { EnumerableToPrimitive } from "./type/toPrimitive"; import type { EnumerableName } from "./type/toStringTag"; export declare abstract class Enum implements Enumerable { #private; /** * Create a new {@link Enum} instance with an {@link Enum.ordinal} defined at the construction. * * Note that the use of `companion` is present so it __reflectively__ set the instance received to `this`. */ protected constructor(); get name(): NAME; get ordinal(): ORDINAL; [Symbol.toPrimitive](hint: Nullable): EnumerableToPrimitive; [Symbol.toPrimitive](hint: Nullable): ORDINAL | NAME; get [Symbol.toStringTag](): EnumerableName; } //# sourceMappingURL=Enum.d.ts.map