UNPKG

reaper-osc

Version:
73 lines (72 loc) 2.2 kB
/** * Contains classes for controlling FX in Reaper * @module */ import { INotifyPropertyChanged } from './Notify'; import { IMessageHandler } from './Handlers'; import { ISendOscMessage, OscMessage } from './Messages'; /** * A Reaper FX. * * @example * ```typescript * // Open an FX UI window * fx.openUi(); * // Bypass the FX * fx.bypass(); * ``` */ export declare class Fx implements INotifyPropertyChanged { readonly oscAddress: string; private _isBypassed; private _isUiOpen; private _name; private _preset; protected readonly _handlers: IMessageHandler[]; protected readonly _sendOscMessage: ISendOscMessage; /** * @param name The FX name * @param oscAddress The OSC address of the FX * @param sendOscMessage A callback used to send OSC messages to Reaper */ constructor(name: string, oscAddress: string, sendOscMessage: ISendOscMessage); /** Bypass the FX */ bypass(): void; /** Close the UI of the FX */ closeUi(): void; /** Indicates whether the FX is bypassed */ get isBypassed(): boolean; /** Indicates whether the FX's UI is open */ get isUiOpen(): boolean; /** The name of the FX */ get name(): string; /** Load the next FX preset */ nextPreset(): void; onPropertyChanged(property: string, callback: () => void): () => void; /** Open the UI of the FX */ openUi(): void; /** The name of the current preset, if any */ get preset(): string; /** Load the previous FX preset */ previousPreset(): void; /** * Receive and handle an OSC message * @param message The message to be handled */ receive(message: OscMessage): boolean; /** Unbypass the FX */ unbypass(): void; } /** * An FX on a {@link Track} */ export declare class TrackFx extends Fx { readonly trackNumber: number; readonly fxNumber: number; /** * @param trackNumber The number of the track the FX is on * @param fxNumber The FX number in the current bank * @param sendOscMessage A callback used to send OSC messages to Reaper */ constructor(trackNumber: number, fxNumber: number, sendOscMessage: ISendOscMessage); }