module Grant_TypesAndValues { // JSON import from JSON all; // LibCommon import from LibCommon_BasicTypesAndValues all; type enumerated Operation_type { INSTANTIATE (0), OPERATE (1), TERMINATE (2) } type record GrantRequest { JSON.String appInstanceId, Operation_type operation } type record GrantRequestWithError { JSON.String appInstanceId, Operation_type_error operation } type enumerated Operation_type_error { INSTANTIATE (0), OPERATE (1), TERMINATE (2) } type record Grant { JSON.String appInstanceId } /** * @desc * @member seconds The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC * @member nanoSeconds The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC */ type record TimeStamp { Seconds seconds, NanoSeconds nanoSeconds } /** * @desc The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC */ type UInt32 Seconds; /** * @desc The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC */ type UInt32 NanoSeconds; /** * @desc Problem Details for HTTP APIs * @member type_ A URI reference according to IETF RFC 3986 that identifies the problem type * @member title A short, human-readable summary of the problem type * @member status The HTTP status code for this occurrence of the problem * @member detail A human-readable explanation specific to this occurrence of the problem * @member instance A URI reference that identifies the specific occurrence of the problem * @see IETF RFC 7807 Clause 3. The Problem Details JSON Object */ type record ProblemDetails { JSON.String type_, JSON.String title, UInt32 status, JSON.String detail, JSON.String instance } with { variant (type_) "name as 'type'"; } } with { encode "JSON" }