import type * as B from "effect/Brand"; import * as S from "effect/Schema"; import type * as SchemaAST from "effect/SchemaAST"; import type { Simplify } from "effect/Types"; import { type BrandedSchema } from "./brand.js"; import { type B as SchemaB } from "./schema.js"; import type { NonEmptyString255Brand, NonEmptyStringBrand } from "./strings.js"; /** * A string that is at least 1 character long and a maximum of 50. */ export interface NonEmptyString50Brand extends Simplify & NonEmptyString64Brand> { } /** * A string that is at least 1 character long and a maximum of 50. */ export type NonEmptyString50 = string & NonEmptyString50Brand; /** * A string that is at least 1 character long and a maximum of 50. */ export interface NonEmptyString50Schema extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): NonEmptyString50; } export declare const NonEmptyString50: NonEmptyString50Schema; /** * A string that is at least 1 character long and a maximum of 64. */ export interface NonEmptyString64Brand extends Simplify & NonEmptyString80Brand> { } /** * A string that is at least 1 character long and a maximum of 64. */ export type NonEmptyString64 = string & NonEmptyString64Brand; /** * A string that is at least 1 character long and a maximum of 64. */ export interface NonEmptyString64Schema extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): NonEmptyString64; } export declare const NonEmptyString64: NonEmptyString64Schema; /** * A string that is at least 1 character long and a maximum of 80. */ export interface NonEmptyString80Brand extends Simplify & NonEmptyString100Brand> { } /** * A string that is at least 1 character long and a maximum of 80. */ export type NonEmptyString80 = string & NonEmptyString80Brand; /** * A string that is at least 1 character long and a maximum of 80. */ export interface NonEmptyString80Schema extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): NonEmptyString80; } export declare const NonEmptyString80: NonEmptyString80Schema; /** * A string that is at least 1 character long and a maximum of 100. */ export interface NonEmptyString100Brand extends Simplify & NonEmptyString255Brand> { } /** * A string that is at least 1 character long and a maximum of 100. */ export type NonEmptyString100 = string & NonEmptyString100Brand; /** * A string that is at least 1 character long and a maximum of 100. */ export interface NonEmptyString100Schema extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): NonEmptyString100; } export declare const NonEmptyString100: NonEmptyString100Schema; /** * A string that is at least 3 character long and a maximum of 255. */ export interface Min3String255Brand extends Simplify & NonEmptyString255Brand> { } /** * A string that is at least 3 character long and a maximum of 255. */ export type Min3String255 = string & Min3String255Brand; /** * A string that is at least 3 character long and a maximum of 255. */ export interface Min3String255Schema extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): Min3String255; } export declare const Min3String255: Min3String255Schema; /** * A string that is at least 6 characters long and a maximum of 50. */ export interface StringIdBrand extends Simplify & NonEmptyString50Brand> { } /** * A string that is at least 6 characters long and a maximum of 50. */ export type StringId = string & StringIdBrand; /** * A string that is at least 6 characters long and a maximum of 50. * * `.withConstructorDefault` => fresh `nanoid()` (construction-only; not * applied during decode — see file-level note). */ export interface StringIdSchema extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): StringId; /** Generate fresh `nanoid()`-shaped `StringId`. */ make(): StringId; /** Construct a `StringId` from a known string (validated via decodeSync). */ make(input: string, options?: S.MakeOptions): StringId; readonly withConstructorDefault: S.withConstructorDefault>; } export declare const StringId: StringIdSchema; /** * Build a `StringId` schema whose values are required to start with a fixed * `prefix` (joined with `separator`, default `-`). * * The returned schema exposes `.withConstructorDefault` that mints a fresh * prefixed id. Construction-only — not applied during decode; see file-level * note. */ export declare function prefixedStringId(): (prefix: Prefix, name: string, separator?: Separator) => import("./ext.js").WithDefaults>> & S.refine> & PrefixedStringUtils; /** * Build a branded `StringId` schema for the given branded `Id` type. * * Exposes `.withConstructorDefault` that mints a fresh `nanoid()`-shaped id. * Construction-only — not applied during decode; see file-level note. */ export declare const brandedStringId: >() => BrandedStringIdSchema; export interface PrefixedStringUtils { readonly make: () => Type; readonly unsafeFrom: (str: string) => Type; prefixSafe: (str: `${Prefix}${Separator}${REST}`) => Type; readonly prefix: Prefix; /** * Construction-only default: fresh prefixed id. Applied only when the * field is omitted from `.make(...)` input. NOT applied during decode — * cannot be used to JIT-migrate database fields. See file-level note. */ readonly withConstructorDefault: S.withConstructorDefault & S.WithoutConstructorDefault>; } export interface BrandedStringIdSchema> extends BrandedSchema { (i: string, options?: SchemaAST.ParseOptions): Id; /** Generate fresh `nanoid()`-shaped id (inherited from `StringId`). */ make(): Id; /** Construct an `Id` from a known string (validated via decodeSync). */ make(input: string, options?: S.MakeOptions): Id; readonly withConstructorDefault: S.withConstructorDefault>; } export interface UrlBrand extends Simplify & NonEmptyStringBrand> { } export type Url = string & UrlBrand; export interface UrlSchema extends S.refine { (i: string, options?: SchemaAST.ParseOptions): Url; } export declare const Url: UrlSchema; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9yZVN0cmluZ3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TY2hlbWEvbW9yZVN0cmluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBWUEsT0FBTyxLQUFLLEtBQUssQ0FBQyxNQUFNLGNBQWMsQ0FBQTtBQUd0QyxPQUFPLEtBQUssQ0FBQyxNQUFNLGVBQWUsQ0FBQTtBQUNsQyxPQUFPLEtBQUssS0FBSyxTQUFTLE1BQU0sa0JBQWtCLENBQUE7QUFDbEQsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRzVDLE9BQU8sRUFBRSxLQUFLLGFBQWEsRUFBc0IsTUFBTSxZQUFZLENBQUE7QUFFbkUsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUMvQyxPQUFPLEtBQUssRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUkvRTs7R0FFRztBQUNILE1BQU0sV0FBVyxxQkFBc0IsU0FBUSxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLHFCQUFxQixDQUFDO0NBQUc7QUFFckg7O0dBRUc7QUFDSCxNQUFNLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxHQUFHLHFCQUFxQixDQUFBO0FBRTdEOztHQUVHO0FBQ0gsTUFBTSxXQUFXLHNCQUF1QixTQUFRLGFBQWEsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLGdCQUFnQixDQUFDO0lBQy9GLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxTQUFTLENBQUMsWUFBWSxHQUFHLGdCQUFnQixDQUFBO0NBQ2hFO0FBQ0QsZUFBTyxNQUFNLGdCQUFnQixFQUFFLHNCQU85QixDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcscUJBQXNCLFNBQVEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsR0FBRyxxQkFBcUIsQ0FBQztDQUFHO0FBRXJIOztHQUVHO0FBQ0gsTUFBTSxNQUFNLGdCQUFnQixHQUFHLE1BQU0sR0FBRyxxQkFBcUIsQ0FBQTtBQUU3RDs7R0FFRztBQUNILE1BQU0sV0FBVyxzQkFBdUIsU0FBUSxhQUFhLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQztJQUMvRixDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQTtDQUNoRTtBQUNELGVBQU8sTUFBTSxnQkFBZ0IsRUFBRSxzQkFPOUIsQ0FBQTtBQUVEOztHQUVHO0FBQ0gsTUFBTSxXQUFXLHFCQUFzQixTQUFRLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsc0JBQXNCLENBQUM7Q0FBRztBQUV0SDs7R0FFRztBQUNILE1BQU0sTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLEdBQUcscUJBQXFCLENBQUE7QUFFN0Q7O0dBRUc7QUFFSCxNQUFNLFdBQVcsc0JBQXVCLFNBQVEsYUFBYSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsZ0JBQWdCLENBQUM7SUFDL0YsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxZQUFZLEdBQUcsZ0JBQWdCLENBQUE7Q0FDaEU7QUFDRCxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsc0JBTzlCLENBQUE7QUFFRDs7R0FFRztBQUNILE1BQU0sV0FBVyxzQkFBdUIsU0FBUSxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLHNCQUFzQixDQUFDO0NBQUc7QUFFeEg7O0dBRUc7QUFDSCxNQUFNLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxHQUFHLHNCQUFzQixDQUFBO0FBRS9EOztHQUVHO0FBQ0gsTUFBTSxXQUFXLHVCQUF3QixTQUFRLGFBQWEsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLGlCQUFpQixDQUFDO0lBQ2pHLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxTQUFTLENBQUMsWUFBWSxHQUFHLGlCQUFpQixDQUFBO0NBQ2pFO0FBQ0QsZUFBTyxNQUFNLGlCQUFpQixFQUFFLHVCQU8vQixDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsa0JBQW1CLFNBQVEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsc0JBQXNCLENBQUM7Q0FBRztBQUVoSDs7R0FFRztBQUNILE1BQU0sTUFBTSxhQUFhLEdBQUcsTUFBTSxHQUFHLGtCQUFrQixDQUFBO0FBRXZEOztHQUVHO0FBQ0gsTUFBTSxXQUFXLG1CQUFvQixTQUFRLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQztJQUNqRixDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUE7Q0FDN0Q7QUFDRCxlQUFPLE1BQU0sYUFBYSxFQUFFLG1CQVEzQixDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsYUFBYyxTQUFRLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLHFCQUFxQixDQUFDO0NBQUc7QUFFckc7O0dBRUc7QUFDSCxNQUFNLE1BQU0sUUFBUSxHQUFHLE1BQU0sR0FBRyxhQUFhLENBQUE7QUFxQjdDOzs7OztHQUtHO0FBQ0gsTUFBTSxXQUFXLGNBQWUsU0FBUSxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUM7SUFDdkUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFBO0lBQ3ZELG1EQUFtRDtJQUNuRCxJQUFJLElBQUksUUFBUSxDQUFBO0lBQ2hCLDZFQUE2RTtJQUM3RSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQTtJQUN0RCxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUE7Q0FDN0Y7QUFDRCxlQUFPLE1BQU0sUUFBUSxFQUFFLGNBYUMsQ0FBQTtBQUV4Qjs7Ozs7OztHQU9HO0FBQ0gsd0JBQWdCLGdCQUFnQixDQUFDLElBQUksU0FBUyxRQUFRLE1BQzVDLE1BQU0sU0FBUyxNQUFNLEVBQUUsU0FBUyxTQUFTLE1BQU0sR0FBRyxHQUFHLFVBQ25ELE1BQU0sUUFDUixNQUFNLGNBQ0EsU0FBUywyTEFnRHhCO0FBRUQ7Ozs7O0dBS0c7QUFDSCxlQUFPLE1BQU0sZUFBZSxHQUFJLEVBQUUsU0FBUyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBSyxxQkFBcUIsQ0FBQyxFQUFFLENBRzFGLENBQUE7QUFFSCxNQUFNLFdBQVcsbUJBQW1CLENBQ2xDLElBQUksU0FBUyxRQUFRLEVBQ3JCLE1BQU0sU0FBUyxNQUFNLEVBQ3JCLFNBQVMsU0FBUyxNQUFNO0lBRXhCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLENBQUE7SUFDekIsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEtBQUssSUFBSSxDQUFBO0lBQzFDLFVBQVUsRUFBRSxDQUFDLElBQUksU0FBUyxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxHQUFHLFNBQVMsR0FBRyxJQUFJLEVBQUUsS0FBSyxJQUFJLENBQUE7SUFDOUUsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUE7SUFDdkI7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUE7Q0FDL0c7QUFFRCxNQUFNLFdBQVcscUJBQXFCLENBQUMsRUFBRSxTQUFTLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFFLFNBQVEsYUFBYSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO0lBQzFHLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxTQUFTLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQTtJQUNqRCx1RUFBdUU7SUFDdkUsSUFBSSxJQUFJLEVBQUUsQ0FBQTtJQUNWLHdFQUF3RTtJQUN4RSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQTtJQUNoRCxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7Q0FDdkY7QUFFRCxNQUFNLFdBQVcsUUFBUyxTQUFRLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLG1CQUFtQixDQUFDO0NBQUc7QUFFekYsTUFBTSxNQUFNLEdBQUcsR0FBRyxNQUFNLEdBQUcsUUFBUSxDQUFBO0FBTW5DLE1BQU0sV0FBVyxTQUFVLFNBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN4RCxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUE7Q0FDbkQ7QUFDRCxlQUFPLE1BQU0sR0FBRyxFQUFFLFNBZWYsQ0FBQSJ9