import { IOcaTimeDeliveryMechanism, OcaTimeDeliveryMechanism, } from '../../types/OcaTimeDeliveryMechanism.js'; import { IOcaTimeReferenceType, OcaTimeReferenceType, } from '../../types/OcaTimeReferenceType.js'; import { OcaTimeSourceAvailability } from '../../types/OcaTimeSourceAvailability.js'; import { OcaTimeSourceSyncStatus } from '../../types/OcaTimeSourceSyncStatus.js'; import { PropertyEvent } from '../property_event.js'; import { RemoteDevice } from '../remote_device.js'; import { OcaAgent } from './OcaAgent.js'; /** * A time source, internal or external, and the delivery method by which time * values reach this device. * @extends OcaAgent * @class OcaTimeSource */ export declare class OcaTimeSource extends OcaAgent { /** * This event is emitted whenever Availability changes. */ OnAvailabilityChanged: PropertyEvent; /** * This event is emitted whenever TimeDeliveryMechanism changes. */ OnTimeDeliveryMechanismChanged: PropertyEvent; /** * An alias for OnTimeDeliveryMechanismChanged */ OnProtocolChanged: PropertyEvent; /** * This event is emitted whenever ReferenceSDPDescription changes. */ OnReferenceSDPDescriptionChanged: PropertyEvent; /** * An alias for OnReferenceSDPDescriptionChanged */ OnParametersChanged: PropertyEvent; /** * This event is emitted whenever ReferenceType changes. */ OnReferenceTypeChanged: PropertyEvent; /** * This event is emitted whenever ReferenceID changes. */ OnReferenceIDChanged: PropertyEvent; /** * This event is emitted whenever SyncStatus changes. */ OnSyncStatusChanged: PropertyEvent; /** * This event is emitted whenever TimeDeliveryParameters changes. */ OnTimeDeliveryParametersChanged: PropertyEvent; constructor(objectNumber: number, device: RemoteDevice); /** * Gets the value of the **Availability** property. * * @method OcaTimeSource#GetAvailability * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaTimeSourceAvailability`. */ GetAvailability(): Promise; /** * Gets the value of the **TimeDeliveryMechanism** property. Prior to v3 of * this class, was named **GetProtocol.** * * @method OcaTimeSource#GetTimeDeliveryMechanism * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaTimeDeliveryMechanism`. */ GetTimeDeliveryMechanism(): Promise; /** * Gets the value of the **TimeDeliveryMechanism** property. Prior to v3 of * this class, was named **GetProtocol.** * An alias for GetTimeDeliveryMechanism. * * @method OcaTimeSource#GetProtocol * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaTimeDeliveryMechanism`. */ GetProtocol(): Promise; /** * Sets the value of the **TimeDeliveryMechanism** property. Prior to v3 of * this class, was named **SetProtocol**. * * @method OcaTimeSource#SetTimeDeliveryMechanism * @param {IOcaTimeDeliveryMechanism} Mechanism * * @returns {Promise} */ SetTimeDeliveryMechanism(Mechanism: IOcaTimeDeliveryMechanism): Promise; /** * Sets the value of the **TimeDeliveryMechanism** property. Prior to v3 of * this class, was named **SetProtocol**. * An alias for SetTimeDeliveryMechanism. * * @method OcaTimeSource#SetProtocol * @param {IOcaTimeDeliveryMechanism} Mechanism * * @returns {Promise} */ SetProtocol(Mechanism: IOcaTimeDeliveryMechanism): Promise; /** * Gets the value of the **ReferenceSDPDescription** property. * * @method OcaTimeSource#GetReferenceSDPDescription * @returns {Promise} * A promise which resolves to a single value of type ``string``. */ GetReferenceSDPDescription(): Promise; /** * Gets the value of the **ReferenceSDPDescription** property. * An alias for GetReferenceSDPDescription. * * @method OcaTimeSource#GetParameters * @returns {Promise} * A promise which resolves to a single value of type ``string``. */ GetParameters(): Promise; /** * Sets the value of the **ReferenceSDPDescription** property. Optional * method, may not be supported in all implementations. * * @method OcaTimeSource#SetReferenceSDPDescription * @param {string} Parameters * * @returns {Promise} */ SetReferenceSDPDescription(Parameters: string): Promise; /** * Sets the value of the **ReferenceSDPDescription** property. Optional * method, may not be supported in all implementations. * An alias for SetReferenceSDPDescription. * * @method OcaTimeSource#SetParameters * @param {string} Parameters * * @returns {Promise} */ SetParameters(Parameters: string): Promise; /** * Gets the time reference type. **This method is deprecated.** * * @method OcaTimeSource#GetReferenceType * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaTimeReferenceType`. */ GetReferenceType(): Promise; /** * Sets the time reference type. Optional method, may not be supported in all * implementations. **This method is deprecated.** * * @method OcaTimeSource#SetReferenceType * @param {IOcaTimeReferenceType} ReferenceType * * @returns {Promise} */ SetReferenceType(ReferenceType: IOcaTimeReferenceType): Promise; /** * Gets the timing source ID. Optional method, not required for all time * reference types. * * @method OcaTimeSource#GetReferenceID * @returns {Promise} * A promise which resolves to a single value of type ``string``. */ GetReferenceID(): Promise; /** * Sets the time reference ID. Optional method, not required for all time * reference types. * * @method OcaTimeSource#SetReferenceID * @param {string} ID * * @returns {Promise} */ SetReferenceID(ID: string): Promise; /** * Gets the synchronization status of this time source. * * @method OcaTimeSource#GetSyncStatus * @returns {Promise} * A promise which resolves to a single value of type :class:`OcaTimeSourceSyncStatus`. */ GetSyncStatus(): Promise; /** * Resets this time source. Initiates a new synchronization sequence. * * @method OcaTimeSource#Reset * @returns {Promise} */ Reset(): Promise; /** * Gets the value of the **TimeDeliveryParameters** property. Optional method. * * @method OcaTimeSource#GetTimeDeliveryParameters * @returns {Promise} * A promise which resolves to a single value of type ``string``. */ GetTimeDeliveryParameters(): Promise; /** * Sets the value of the **TimeDeliveryParameters** property. Optional method. * * @method OcaTimeSource#SetTimeDeliveryParameters * @param {string} Record * * @returns {Promise} */ SetTimeDeliveryParameters(Record: string): Promise; }