@wildboar/rose
Version:
Remote Operation Service Element PDUs in TypeScript
49 lines • 1.69 kB
text/typescript
import { ASN1Element as _Element } from '@wildboar/asn1';
import * as $ from '@wildboar/asn1/functional';
import { Invoke } from '../Remote-Operations-Generic-ROS-PDUs/Invoke.ta.mjs';
import { ReturnResult } from '../Remote-Operations-Generic-ROS-PDUs/ReturnResult.ta.mjs';
import { ReturnError } from '../Remote-Operations-Generic-ROS-PDUs/ReturnError.ta.mjs';
import { Reject } from '../Remote-Operations-Generic-ROS-PDUs/Reject.ta.mjs';
/**
* @summary ROS
* @description
*
* ### ASN.1 Definition:
*
* ```asn1
* ROS{InvokeId:InvokeIdSet, OPERATION:Invokable, OPERATION:Returnable} ::=
* CHOICE {
* invoke [1] Invoke{{InvokeIdSet}, {Invokable}},
* returnResult [2] ReturnResult{{Returnable}},
* returnError [3] ReturnError{{Errors {{Returnable}}}},
* reject [4] Reject
* }
* (CONSTRAINED BY { -- must conform to the above definition --} !
* RejectProblem:general-unrecognizedPDU)
* ```
*/
export type ROS = {
invoke: Invoke;
} | {
returnResult: ReturnResult;
} | {
returnError: ReturnError;
} | {
reject: Reject;
};
/**
* @summary Decodes an ASN.1 element into a(n) ROS
* @function
* @param {_Element} el The element being decoded.
* @returns {ROS} The decoded data structure.
*/
export declare function _decode_ROS(el: _Element): ROS;
/**
* @summary Encodes a(n) ROS into an ASN.1 Element.
* @function
* @param value The element being encoded.
* @param elGetter A function that can be used to get new ASN.1 elements.
* @returns {_Element} The ROS, encoded as an ASN.1 Element.
*/
export declare function _encode_ROS(value: ROS, elGetter: $.ASN1Encoder<ROS>): _Element;
//# sourceMappingURL=ROS.ta.d.mts.map