import * as valita from '../../shared/src/valita.ts'; export declare const STRING_LENGTH = 22; declare const hashTag: unique symbol; /** * Opaque type representing a hash. The only way to create one is using `parse` * or `hashOf` (except for static unsafe cast of course). */ export type Hash = string & { [hashTag]: true; }; export declare function parse(s: string): Hash; export declare const emptyHash: Hash; /** * Creates a function that generates random hashes. */ export declare const newRandomHash: () => Hash; /** * Creates a function that generates UUID hashes for tests. */ export declare function makeNewFakeHashFunction(hashPrefix?: string): () => Hash; /** * Generates a fake hash useful for testing. */ export declare function fakeHash(word: string | number): Hash; export declare function isHash(value: unknown): value is Hash; export declare function assertHash(value: unknown): asserts value is Hash; export declare const hashSchema: valita.Type; export {}; //# sourceMappingURL=hash.d.ts.map