type nonrec t = x -> unit (a:1)
type nonrec t = x -> unit (a:1)
type nonrec t = int -> string -> unit (a:2)
type nonrec t = a:int -> b:int -> int (a:2)
type nonrec t = ?a:int -> ?b:int -> int (a:2)
type nonrec t = int -> int -> int -> int (a:1) (a:1) (a:1)
type nonrec t = a:int -> b:int -> c:int -> int (a:1) (a:1) (a:1)
let (f : x -> unit (a:1)) = xf
let (f : x -> unit (a:1)) = xf
let (f : int -> string -> unit (a:2)) = xf
let (t : a:int -> b:int -> int (a:2)) = xf
let (t : ?a:int -> ?b:int -> int (a:2)) = xf
let (t : int -> int -> int -> int (a:1) (a:1) (a:1)) = xf
let (t : a:int -> b:int -> c:int -> int (a:1) (a:1) (a:1)) = xf
type nonrec t = f:int -> string
type nonrec t = ?f:int -> string
let (f : f:int -> string) = fx
let (f : ?f:int -> string) = fx
type nonrec t = f:int -> string (a:1)
type nonrec t = f:int -> string
type nonrec t = f:(int -> string (a:1)) -> float (a:1)
type nonrec t = f:(int -> string (a:1)) -> float
type nonrec t = f:int -> string -> float (a:1)
type nonrec t =
  a:int[@attrBeforeLblA ] ->
    b:int[@attrBeforeLblB ] -> ((float)[@attr ]) -> unit (a:3)
type nonrec t =
  ((a:int ->
      ((b:int -> ((float)[@attr ]) -> unit (a:1) (a:1))[@attrBeforeLblB ]) (a:1))
  [@attrBeforeLblA ])
type nonrec t = a:int[@attr ] -> unit
type nonrec 'a getInitialPropsFn =
  < query: string dict  ;req: 'a Js.t Js.Nullable.t   >  ->
    'a Js.t Js.Promise.t (a:1)