import { Arguments } from '../arguments.js'; import { PropertyEvent } from '../property_event.js'; import { RemoteDevice } from '../remote_device.js'; import { OcaActuator } from './OcaActuator.js'; /** * Finite impulse response (FIR) filter. * @extends OcaActuator * @class OcaFilterFIR */ export declare class OcaFilterFIR extends OcaActuator { /** * This event is emitted whenever Length changes. */ OnLengthChanged: PropertyEvent; /** * This event is emitted whenever Coefficients changes. */ OnCoefficientsChanged: PropertyEvent; /** * This event is emitted whenever SampleRate changes. */ OnSampleRateChanged: PropertyEvent; constructor(objectNumber: number, device: RemoteDevice); /** * Gets the length and length limits of the FIR filter. * The return values of this method are * * - Length of type ``number`` * - minLength of type ``number`` * - maxLength of type ``number`` * * @method OcaFilterFIR#GetLength * @returns {Promise>} */ GetLength(): Promise>; /** * Gets the coefficients of the FIR filter. * * @method OcaFilterFIR#GetCoefficients * @returns {Promise} * A promise which resolves to a single value of type ``number[]``. */ GetCoefficients(): Promise; /** * Sets the coefficients of the FIR filter. * * @method OcaFilterFIR#SetCoefficients * @param {number[]} Coefficients * * @returns {Promise} */ SetCoefficients(Coefficients: number[]): Promise; /** * Gets the value and limits of the **SampleRate** property. * The return values of this method are * * - Rate of type ``number`` * - minRate of type ``number`` * - maxRate of type ``number`` * * @method OcaFilterFIR#GetSampleRate * @returns {Promise>} */ GetSampleRate(): Promise>; /** * Sets the sampling rate of the FIR filter. * * @method OcaFilterFIR#SetSampleRate * @param {number} Rate * * @returns {Promise} */ SetSampleRate(Rate: number): Promise; }