Module: Inttegro::Types
- Defined in:
- lib/inttegro/types.rb
Overview
Shared public types used by the SDK's Sorbet signatures.
Constant Summary collapse
- Scalar =
T.type_alias { T.any(String, Integer, Float, TrueClass, FalseClass, NilClass) }
- Key =
T.type_alias { T.any(String, Symbol) }
- Payload =
Ruby's type system cannot express recursive JSON containers without an escape hatch. Object is deliberate here: callers must narrow an unknown wire value before using it, instead of silently disabling checks.
T.type_alias { T::Hash[Key, Object] }
- Headers =
T.type_alias { T::Hash[String, String] }
- ResponseHeaders =
T.type_alias { T::Hash[String, T::Array[String]] }
- QueryValue =
T.type_alias do T.any(Scalar, T::Array[String], T::Array[Integer], T::Array[Float]) end
- Query =
T.type_alias { T::Hash[Key, QueryValue] }
- RequestBody =
T.type_alias { T.any(Payload, T::Struct) }
- WireValue =
T.type_alias do T.any(Scalar, T::Enum, T::Struct, Payload, T::Array[Object]) end
- Adapter =
T.type_alias do T.proc.params(uri: URI::Generic, request: Net::HTTPRequest).returns(Object) end