Sch_schema_constraint_fmt
type t = [
| `Email
| `Idn_email
| `Hostname
| `Uri
| `Uuid
| `Date
| `Date_time
| `Time
| `Duration
| `Ipv4
| `Ipv6
| `Custom of string
]
val email_re : Js.Re.t
val idn_email_re : Js.Re.t
val date_re : Js.Re.t
val time_re : Js.Re.t
val datetime_re : Js.Re.t
val extended_iso_8601_duration_re : Js.Re.t
val uuid_re : Js.Re.t
val validate_regex : string -> (unit, string list) Stdlib.result
val pattern : string -> string -> (string, string list) Stdlib.result
val ipv4_re : Js.Re.t
this is probably not the best, but it work for now
val validate_ipv4 : string -> (string, string list) Stdlib.result
val ipv6_re : Js.Re.t
val validate_ipv6 : string -> (string, string list) Stdlib.result
val validate_hostname : 'a -> ('a, 'b) Stdlib.result
TODO: implement hostname validation
val validate_email : string -> (string, string list) Stdlib.result
val validate_idn_email : string -> (string, string list) Stdlib.result
val is_leap_year : int -> bool
val days_in_month : int -> int -> int
val int_of_float : float -> int
val validate_date : Js.String.t -> (Js.String.t, string list) Stdlib.result
val array_index : index:int -> 'a array -> 'a option
val match_at : index:int -> 'a Js.Nullable.t array -> 'a option
val validate_time : string -> (string, string list) Stdlib.result
val validate_datetime : Js.String.t -> (Js.String.t, string list) Stdlib.result
val validate_duration : string -> (string, string list) Stdlib.result
val uri_re : Js.Re.t
val validate_uri : string -> (string, string list) Stdlib.result
val validate_uuid : string -> (string, string list) Stdlib.result
val validate : t -> string -> (string, string list) Stdlib.result
val to_string : t -> string