Module Types.Purchase

type t = {
currency_code : CurrencyCodeValues.t option;
duration : Aws.BaseTypes.Integer.t option;
host_id_set : ResponseHostIdSet.t;
host_reservation_id : Aws.BaseTypes.String.t option;
hourly_price : Aws.BaseTypes.String.t option;
instance_family : Aws.BaseTypes.String.t option;
payment_option : PaymentOption.t option;
upfront_price : Aws.BaseTypes.String.t option;
}
val make : ?⁠currency_code:CurrencyCodeValues.t -> ?⁠duration:Aws.BaseTypes.Integer.t -> ?⁠host_id_set:ResponseHostIdSet.t -> ?⁠host_reservation_id:Aws.BaseTypes.String.t -> ?⁠hourly_price:Aws.BaseTypes.String.t -> ?⁠instance_family:Aws.BaseTypes.String.t -> ?⁠payment_option:PaymentOption.t -> ?⁠upfront_price:Aws.BaseTypes.String.t -> unit -> t
val parse : Ezxmlm.nodes -> t option
val to_query : t -> Aws.Query.t
val to_json : t -> [> `Assoc of (string * Aws.Json.t) list ]
val of_json : Aws.Json.t -> t