CloudFront type model for Rustack.
Defines the domain types for the CloudFront management API (distributions, invalidations, origin access controls, cache/origin/response-header policies, key groups, public keys, functions, field-level encryption, realtime log configs, tags) and the error type used across the HTTP and provider layers.
Wire-format XML (request parsing and response rendering) lives in the
companion rustack-cloudfront-http crate. This crate is dependency-free of
HTTP plumbing so it can be reused from both management and data-plane
code.