specs/device/list/v0_2/payload library

Classes

DeviceBinding
DeviceBinding
KeyCustody
How a device custodies its private key material — maintainer policy input, mirroring attestation. See docs/design-notes/mobile-key-custody-profile.md.
Payload
List DeviceBindings known to the maintainer, optionally filtered by consumer kind, capability, status, and last-seen time.
Response
Device List — response payload

Extension Types

Capability
Fine-grained capability flag scoped to the device's allowed contexts. See SPEC.md for the full semantics of each. Capability values are additive: a consumer MUST ignore a value it does not recognise rather than reject the binding, and MUST NOT treat an unrecognised value as conferring anything.
KeyCustodyTier
hardware: the key is non-exportable in the secure keystore (iOS Secure Enclave / Android StrongBox) and every signing / key-agreement operation runs in-chip — achievable only with P-256. software: the key is held in app memory during use, stored hardware-wrapped at rest. Maintainers MAY apply stricter policy (shorter sessions, more frequent step-up) to software-tier devices.
PayloadConsumerKindFilter
PayloadConsumerKindFilter is a closed set of string values defined by this specification's schema.
PayloadFormFactorFilter
PayloadFormFactorFilter is a closed set of string values defined by this specification's schema.
PayloadServiceKindFilter
PayloadServiceKindFilter is a closed set of string values defined by this specification's schema.

Constants

payloadSchemaJson → const String
This specification's payload schema, as JSON text.
responsePayloadSchemaJson → const String
As payloadSchemaJson, for the success-response variant.
responseSpec → const SpecPolicy
The SPEC §7.2 policy for the success-response variant.
responseTypeUri → const String
The success-response form of typeUri (SPEC §4.4.1).
spec → const SpecPolicy
The SPEC §7.2 policy for the request variant, taken from this specification's front matter.
typeUri → const String
The Trust Task type URI this library's Payload is carried under.

Typedefs

ConsumerKind = Object?
Discriminator: is this consumer a user-driven Companion or a headless Service?
DeviceAttestation = Object?
Producer-supplied attestation at registration time, verifiable by the maintainer against the platform's attestation infrastructure. Tagged union over the discriminator kind.
Ext = Map<String, dynamic>
Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.