UNPKG

aes70

Version:

A controller library for the AES70 protocol.

224 lines (202 loc) 5.57 kB
import { IOcaLockState } from '../../types/OcaLockState.js'; import { OcaTime } from '../../types/OcaTime.js'; import { Arguments } from '../arguments.js'; import { PropertyEvent } from '../property_event.js'; import { RemoteDevice } from '../remote_device.js'; import { OcaRoot } from './OcaRoot.js'; /** * * - An OCA Dataset. A dataset is like a simple binary file that can be read * and written. * * - Every dataset is a separate **OcaDataset** object. * * * @extends OcaRoot * @class OcaDataset */ export declare class OcaDataset extends OcaRoot { /** * This event is emitted whenever Name changes. */ OnNameChanged: PropertyEvent<string>; /** * This event is emitted whenever Type changes. */ OnTypeChanged: PropertyEvent<string>; /** * This event is emitted whenever ReadOnly changes. */ OnReadOnlyChanged: PropertyEvent<boolean>; /** * This event is emitted whenever LastModificationTime changes. */ OnLastModificationTimeChanged: PropertyEvent<OcaTime>; /** * This event is emitted whenever MaxSize changes. */ OnMaxSizeChanged: PropertyEvent<number | BigInt>; constructor(objectNumber: number, device: RemoteDevice); /** * Opens a reading session. Returns status = **ProcessingFailed** if handle * pool is used up. * The return values of this method are * * - DatasetSize of type ``number|BigInt`` * - Handle of type ``number`` * * @method OcaDataset#OpenRead * @param {IOcaLockState} RequestedLockState * * @returns {Promise<Arguments<number|BigInt,number>>} */ OpenRead( RequestedLockState: IOcaLockState ): Promise<Arguments<[number | BigInt, number]>>; /** * Opens a writing session. Returns status = **ProcessingFailed** if handle * pool is used up. * The return values of this method are * * - MaxPartSize of type ``number|BigInt`` * - Handle of type ``number`` * * @method OcaDataset#OpenWrite * @param {IOcaLockState} RequestedLockState * * @returns {Promise<Arguments<number|BigInt,number>>} */ OpenWrite( RequestedLockState: IOcaLockState ): Promise<Arguments<[number | BigInt, number]>>; /** * Closes a reading or writing session. * * @method OcaDataset#Close * @param {number} Handle * * @returns {Promise<void>} */ Close(Handle: number): Promise<void>; /** * Reads a part of the Dataset. * The return values of this method are * * - EndOfData of type ``boolean`` * - Part of type ``Uint8Array`` * * @method OcaDataset#Read * @param {number} Handle * @param {number|BigInt} Position * @param {number|BigInt} PartSize * * @returns {Promise<Arguments<boolean,Uint8Array>>} */ Read( Handle: number, Position: number | BigInt, PartSize: number | BigInt ): Promise<Arguments<[boolean, Uint8Array]>>; /** * Writes a part of the dataset. * * @method OcaDataset#Write * @param {number} Handle * @param {number|BigInt} Position * @param {Uint8Array} Part * * @returns {Promise<void>} */ Write( Handle: number, Position: number | BigInt, Part: Uint8Array ): Promise<void>; /** * Removes all data from the dataset. * * @method OcaDataset#Clear * @param {number} Handle * * @returns {Promise<void>} */ Clear(Handle: number): Promise<void>; /** * Gets the value of property **Owner**. * * @method OcaDataset#GetOwner * @returns {Promise<number>} * A promise which resolves to a single value of type ``number``. */ GetOwner(): Promise<number>; /** * Gets the value of property **Name**. * * @method OcaDataset#GetName * @returns {Promise<string>} * A promise which resolves to a single value of type ``string``. */ GetName(): Promise<string>; /** * Sets the value of property **Name**. * * @method OcaDataset#SetName * @param {string} Name * * @returns {Promise<void>} */ SetName(Name: string): Promise<void>; /** * Gets the value of property **Type**. * * @method OcaDataset#GetType * @returns {Promise<string>} * A promise which resolves to a single value of type ``string``. */ GetType(): Promise<string>; /** * Sets the value of property **Type** . * * @method OcaDataset#SetType * @param {string} Type * * @returns {Promise<void>} */ SetType(Type: string): Promise<void>; /** * Gets the value of the **Readonly** property. * * @method OcaDataset#GetReadOnly * @returns {Promise<boolean>} * A promise which resolves to a single value of type ``boolean``. */ GetReadOnly(): Promise<boolean>; /** * Sets the value of the **Readonly** property. Optional method. * * @method OcaDataset#SetReadOnly * @param {boolean} ReadOnly * * @returns {Promise<void>} */ SetReadOnly(ReadOnly: boolean): Promise<void>; /** * Gets the value of property **LastModificationTime**. Optional method. * * @method OcaDataset#GetLastModificationTime * @returns {Promise<OcaTime>} * A promise which resolves to a single value of type :class:`OcaTime`. */ GetLastModificationTime(): Promise<OcaTime>; /** * Gets current & max sizes * The return values of this method are * * - CurrentSize of type ``number|BigInt`` * - MaxSize of type ``number|BigInt`` * * @method OcaDataset#GetDatasetSizes * @returns {Promise<Arguments<number|BigInt,number|BigInt>>} */ GetDatasetSizes(): Promise<Arguments<[number | BigInt, number | BigInt]>>; }