import { Equal } from "@effect-ts-app/core/Prelude"; import type { ApiSelfType, DefaultSchema, NonEmptyString, Parser, SchemaDefaultSchema, SchemaUPI, Utils } from "@effect-ts-app/schema"; import type { ParsedShapeOfCustom, ReasonableStringBrand, UnionBrand } from "./_schema.js"; import { Email as Email_, PositiveInt, ReasonableString } from "./_schema.js"; export declare function tag(tag: K): import("@effect-ts-app/schema").Property>, "required", import("@fp-ts/data/Option").None, import("@fp-ts/data/Option").None>; export declare const stringPositiveIntIdentifier: import("@effect-ts-app/schema").Annotation<{}>; export declare const StringPositiveInt: DefaultSchema; export type StringPositiveInt = PositiveInt; /** * A string that is at least 3 character long and a maximum of 50. */ export interface ShortStringBrand extends ReasonableStringBrand { readonly ShortString: unique symbol; } /** * A string that is at least 3 character long and a maximum of 50. */ export type ShortString = string & ShortStringBrand; /** * A string that is at least 3 character long and a maximum of 50. */ export declare const shortStringFromString: SchemaDefaultSchema>; /** * A string that is at least 3 character long and a maximum of 50. */ export declare const ShortString: SchemaDefaultSchema> & Utils>>; /** * A string that is at least 3 character long and a maximum of 255. */ export interface ReasonableString3Brand extends ReasonableStringBrand { readonly ReasonableString3: unique symbol; } /** * A string that is at least 3 character long and a maximum of 255. */ export type ReasonableString3 = string & ReasonableString3Brand; /** * A string that is at least 3 character long and a maximum of 255. */ export declare const reasonableString3FromString: SchemaDefaultSchema>; /** * A string that is at least 3 character long and a maximum of 255. */ export declare const ReasonableString3: SchemaDefaultSchema> & Utils>>; /** * A string that is at least 6 characters long and a maximum of 50. */ export interface StringIdBrand extends ReasonableStringBrand { readonly StringId: unique symbol; } /** * A string that is at least 6 characters long and a maximum of 50. */ export type StringId = string & StringIdBrand; export declare const stringIdFromString: SchemaDefaultSchema>; /** * A string that is at least 6 characters long and a maximum of 50. */ export interface StringIdSchema extends SchemaDefaultSchema> { } export declare const StringId: StringIdSchema & Utils & { make(this: void): StringId; }; export declare const prefixedStringIdUnsafe: (prefix: string) => StringId; export declare const prefixedStringIdUnsafeThunk: (prefix: string) => () => StringId; export interface PrefixedStringIdSchema extends SchemaWithUtils>>, PrefixedStringUtils { } export type SchemaWithUtils = Schema & Utils; export declare function prefixedStringId(): (prefix: Prefix, name: string, separator?: Separator | undefined) => PrefixedStringIdSchema; export interface PrefixedStringUtils { readonly EParser: Parser.Parser; readonly create: () => Brand; readonly unsafeFrom: (str: string) => Brand; prefixSafe: (str: `${Prefix}${Separator}${REST}`) => Brand; readonly is: (x: StringId) => x is Brand; readonly prefix: Prefix; eq: Equal; } export interface UrlBrand { readonly Url: unique symbol; } export type Url = NonEmptyString & UrlBrand; export declare const UrlFromStringIdentifier: import("@effect-ts-app/schema").Annotation<{}>; export declare const UrlFromString: DefaultSchema; export declare const UrlIdentifier: import("@effect-ts-app/schema").Annotation<{}>; export declare const Url: SchemaDefaultSchema> & Utils>>; export declare const avatarUrl: SchemaDefaultSchema>; export type avatarUrl = NonEmptyString & UnionBrand; export declare const customUrlFromString: (pool: readonly Url[]) => SchemaDefaultSchema>; export declare const customUrl: (pool: readonly Url[]) => SchemaDefaultSchema>; export declare const PhoneNumber: SchemaDefaultSchema & ApiSelfType>; export type PhoneNumber = StringId & UnionBrand; declare const Email__: SchemaDefaultSchema & ApiSelfType> & Utils & ApiSelfType>> & { eq: { equals: (a: Email, b: Email) => boolean; }; endsWith: ((b: Email) => (a: string) => boolean) & { _: (a: string, b: Email) => boolean; r: (a: string) => (b: Email) => boolean; }; toDomain: (email: Email) => ReasonableString; isDomain: ((b: Email) => (a: string) => boolean) & { _: (a: string, b: Email) => boolean; r: (a: string) => (b: Email) => boolean; }; toDisplayName: (e: Email) => ReasonableString; }; type EmailSchema__ = typeof Email__; export interface EmailSchema extends EmailSchema__ { } export declare const Email: EmailSchema; export type Email = ParsedShapeOfCustom & { split: (separator: "@") => [ReasonableString, ReasonableString]; }; export {}; //# sourceMappingURL=shared.d.ts.map