import { KeyValuePair, Tuple } from "../storage/types"; export type Assert = Actual; export type Ints = `${number}`; /** Convert ["a", "b"] in {0: "a", 1: "b"} so that we can use Extract to match tuple prefixes. */ export type TupleToObject = Pick>; export type FilterTupleByPrefix = Extract>; export type FilterTupleValuePairByPrefix = Extract; }>; export type FilterTupleValuePair = Extract; type DistributiveProp = T extends unknown ? T[K] : never; export type ValueForTuple = DistributiveProp, "value">; export type IsTuple = [] | { 0: any; }; export type TuplePrefix = T extends IsTuple ? T extends [any, ...infer U] ? [] | [T[0]] | [T[0], ...TuplePrefix] : [] : T | []; export type TupleRest = T extends [any, ...infer U] ? U : never; export type RemoveTuplePrefix = T extends IsTuple ? T extends [...P, ...infer U] ? U : never : T; export type RemoveTupleValuePairPrefix = T extends { key: [...P, ...infer U]; value: infer V; } ? { key: U; value: V; } : never; export type SchemaSubspace

= T extends unknown ? { key: [...P, ...T["key"]]; value: T["value"]; } : never; export {}; //# sourceMappingURL=../../src/database/typeHelpers.d.ts.map