import type { ArrayOptions, DateOptions, IntegerOptions, ObjectOptions, SchemaOptions, TAnySchema, TArray, TBoolean, TDate, TEnumValue, TInteger, TNumber, TObject, TProperties, TSchema, TString, NumberOptions, JavaScriptTypeBuilder, StringOptions, TUnsafe, Uint8ArrayOptions, TEnum } from '@sinclair/typebox'; import { CookieValidatorOptions, TFile, FilesOptions, NonEmptyArray, TForm, TUnionEnum, ElysiaTransformDecodeBuilder, TArrayBuffer, AssertNumericEnum } from './types'; declare const t: Omit & typeof ElysiaType & { Transform(type: Type): ElysiaTransformDecodeBuilder; }; interface ElysiaStringOptions extends StringOptions { /** * Whether the value include JSON escape sequences or not * * When using JSON Accelerator, this will bypass the JSON escape sequence validation * * Set to `true` if the value doesn't include JSON escape sequences * * @default false */ trusted?: boolean; } export declare const ElysiaType: { String: (property?: ElysiaStringOptions) => TString; Numeric: (property?: NumberOptions) => TNumber; NumericEnum>(item: T, property?: SchemaOptions): TEnum; Integer: (property?: IntegerOptions) => TInteger; Date: (property?: DateOptions) => TDate; BooleanString: (property?: SchemaOptions) => TBoolean; ObjectString: (properties: T, options?: ObjectOptions) => TObject; ArrayString: (children?: T, options?: ArrayOptions) => TArray; ArrayQuery: (children?: T, options?: ArrayOptions) => TArray; File: TFile; Files: (options?: FilesOptions) => TUnsafe; Nullable: (schema: T, options?: SchemaOptions) => import("@sinclair/typebox").TUnion<[T, import("@sinclair/typebox").TNull]>; /** * Allow Optional, Nullable and Undefined */ MaybeEmpty: (schema: T, options?: SchemaOptions) => import("@sinclair/typebox").TUnion<[T, import("@sinclair/typebox").TNull, import("@sinclair/typebox").TUndefined]>; Cookie: (properties: T, { domain, expires, httpOnly, maxAge, path, priority, sameSite, secure, secrets, sign, ...options }?: CookieValidatorOptions) => TObject; UnionEnum: | Readonly>>(values: T, options?: SchemaOptions) => TUnionEnum; NoValidate: (v: T, enabled?: boolean) => T; Form: (v: T, options?: ObjectOptions) => TForm; ArrayBuffer(options?: TArrayBuffer): TUnsafe; Uint8Array: (options: Uint8ArrayOptions) => TUnsafe; }; export { t }; export { TypeSystemPolicy, TypeSystem, TypeSystemDuplicateFormat, TypeSystemDuplicateTypeKind } from '@sinclair/typebox/system'; export { TypeRegistry, FormatRegistry } from '@sinclair/typebox'; export { TypeCompiler, TypeCheck } from '@sinclair/typebox/compiler';