Signature.ComponentMessage components that can be included in signatures per RFC 9421 Section 2.
Derived components are computed from message context, not raw headers. Per Section 2.2.
type derived = [ | `Method@method - HTTP request method
| `Authority@authority - Target host (host:port)
| `Path@path - Request target path
| `Query@query - Query string with leading ?
| `Query_param of string@query-param;name="..." - Individual query parameter
| `Target_uri@target-uri - Full target URI
| `Status@status - Response status code (responses only)
| `Request_target@request-target - Deprecated form
]Parameters that modify component behavior per Section 2.1.
A component identifier, either derived or a header field.
val method_ : tThe @method derived component.
val authority : tThe @authority derived component.
val path : tThe @path derived component.
val query : tThe @query derived component.
val query_param : string -> tquery_param name creates a @query-param;name="..." component.
val target_uri : tThe @target-uri derived component.
val status : tThe @status derived component (for responses).
val request_target : tThe @request-target derived component (deprecated).
val field : string -> tfield name creates a header field component (lowercased).
val field_sf : string -> tfield_sf name creates a header field with strict structured field serialization.
val field_bs : string -> tfield_bs name creates a header field with byte sequence wrapping.
val field_key : string -> key:string -> tfield_key name ~key creates a header field selecting a dictionary member.
val field_req : string -> tfield_req name creates a request-bound header field (for responses).
val content_type : tThe content-type header field.
val content_length : tThe content-length header field.
val content_digest : tThe content-digest header field (RFC 9530).
val date : tThe date header field.
val host : tThe host header field.
val to_identifier : t -> stringto_identifier c returns the component identifier string.