import { ASN1Element as _Element, INTEGER, OBJECT_IDENTIFIER, OPTIONAL } from "@wildboar/asn1"; import * as $ from "@wildboar/asn1/functional"; import { ServiceControlOptions } from "../DirectoryAbstractService/ServiceControlOptions.ta.mjs"; import { ServiceControls_manageDSAITPlaneRef } from "../DirectoryAbstractService/ServiceControls-manageDSAITPlaneRef.ta.mjs"; import { ServiceControls_priority } from "../DirectoryAbstractService/ServiceControls-priority.ta.mjs"; import { ServiceControls_scopeOfReferral } from "../DirectoryAbstractService/ServiceControls-scopeOfReferral.ta.mjs"; /** * @summary ServiceControls * @description * * ### ASN.1 Definition: * * ```asn1 * ServiceControls ::= SET { * options [0] ServiceControlOptions DEFAULT {}, * priority [1] INTEGER {low(0), medium(1), high(2)} DEFAULT medium, * timeLimit [2] INTEGER OPTIONAL, * sizeLimit [3] INTEGER OPTIONAL, * scopeOfReferral [4] INTEGER {dmd(0), country(1)} OPTIONAL, * attributeSizeLimit [5] INTEGER OPTIONAL, * manageDSAITPlaneRef [6] SEQUENCE { * dsaName Name, * agreementID AgreementID, * ...} OPTIONAL, * serviceType [7] OBJECT IDENTIFIER OPTIONAL, * userClass [8] INTEGER OPTIONAL, * ... } * ``` * */ export declare class ServiceControls { /** * @summary `options`. * @public * @readonly */ readonly options?: OPTIONAL; /** * @summary `priority`. * @public * @readonly */ readonly priority?: OPTIONAL; /** * @summary `timeLimit`. * @public * @readonly */ readonly timeLimit?: OPTIONAL; /** * @summary `sizeLimit`. * @public * @readonly */ readonly sizeLimit?: OPTIONAL; /** * @summary `scopeOfReferral`. * @public * @readonly */ readonly scopeOfReferral?: OPTIONAL; /** * @summary `attributeSizeLimit`. * @public * @readonly */ readonly attributeSizeLimit?: OPTIONAL; /** * @summary `manageDSAITPlaneRef`. * @public * @readonly */ readonly manageDSAITPlaneRef?: OPTIONAL; /** * @summary `serviceType`. * @public * @readonly */ readonly serviceType?: OPTIONAL; /** * @summary `userClass`. * @public * @readonly */ readonly userClass?: OPTIONAL; /** * @summary Extensions that are not recognized. * @public * @readonly */ readonly _unrecognizedExtensionsList: _Element[]; constructor( /** * @summary `options`. * @public * @readonly */ options?: OPTIONAL, /** * @summary `priority`. * @public * @readonly */ priority?: OPTIONAL, /** * @summary `timeLimit`. * @public * @readonly */ timeLimit?: OPTIONAL, /** * @summary `sizeLimit`. * @public * @readonly */ sizeLimit?: OPTIONAL, /** * @summary `scopeOfReferral`. * @public * @readonly */ scopeOfReferral?: OPTIONAL, /** * @summary `attributeSizeLimit`. * @public * @readonly */ attributeSizeLimit?: OPTIONAL, /** * @summary `manageDSAITPlaneRef`. * @public * @readonly */ manageDSAITPlaneRef?: OPTIONAL, /** * @summary `serviceType`. * @public * @readonly */ serviceType?: OPTIONAL, /** * @summary `userClass`. * @public * @readonly */ userClass?: OPTIONAL, /** * @summary Extensions that are not recognized. * @public * @readonly */ _unrecognizedExtensionsList?: _Element[]); /** * @summary Restructures an object into a ServiceControls * @description * * This takes an `object` and converts it to a `ServiceControls`. * * @public * @static * @method * @param {Object} _o An object having all of the keys and values of a `ServiceControls`. * @returns {ServiceControls} */ static _from_object(_o: Partial<{ [_K in keyof ServiceControls]: ServiceControls[_K]; }>): ServiceControls; /** * @summary Getter that returns the default value for `options`. * @public * @static * @method */ static get _default_value_for_options(): ServiceControlOptions; /** * @summary Getter that returns the default value for `priority`. * @public * @static * @method */ static get _default_value_for_priority(): ServiceControls_priority; } /** * @summary The Leading Root Component Types of ServiceControls * @description * * This is an array of `ComponentSpec`s that define how to decode the leading root component type list of a SET or SEQUENCE. * * @constant */ export declare const _root_component_type_list_1_spec_for_ServiceControls: $.ComponentSpec[]; /** * @summary The Trailing Root Component Types of ServiceControls * @description * * This is an array of `ComponentSpec`s that define how to decode the trailing root component type list of a SET or SEQUENCE. * * @constant */ export declare const _root_component_type_list_2_spec_for_ServiceControls: $.ComponentSpec[]; /** * @summary The Extension Addition Component Types of ServiceControls * @description * * This is an array of `ComponentSpec`s that define how to decode the extension addition component type list of a SET or SEQUENCE. * * @constant */ export declare const _extension_additions_list_spec_for_ServiceControls: $.ComponentSpec[]; /** * @summary Decodes an ASN.1 element into a(n) ServiceControls * @function * @param {_Element} el The element being decoded. * @returns {ServiceControls} The decoded data structure. */ export declare function _decode_ServiceControls(el: _Element): ServiceControls; /** * @summary Encodes a(n) ServiceControls 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 ServiceControls, encoded as an ASN.1 Element. */ export declare function _encode_ServiceControls(value: ServiceControls, elGetter: $.ASN1Encoder): _Element; //# sourceMappingURL=ServiceControls.ta.d.mts.map