/**
 * Configuration types shared across the library
 * @module
 */
import { OscMessage } from './Messages';
export declare type LogLevel = 'debug' | 'info' | 'warn' | 'error';
export declare type Logger = (level: LogLevel, message: string, ...optionalParams: any[]) => void;
export declare function ConsoleLogger(level: LogLevel, message: string, ...optionalParams: any[]): void;
export declare class ReaperConfiguration {
    afterMessageReceived: ((message: OscMessage, handled: boolean) => void) | null;
    /** The address to listen for Reaper OSC messages on */
    localAddress: string;
    /** The port to listen for Reaper OSC messages on */
    localPort: number;
    /** Function for logging messages. Defaults to logging to console */
    log: Logger;
    /** Number of FX per track */
    numberOfFx: number;
    /** Number of sends per track */
    numberOfSends: number;
    /** Number of receives per track */
    numberOfReceives: number;
    /** Number of markers per bank */
    numberOfMarkers: number;
    /** Number of regions per bank */
    numberOfRegions: number;
    /** Number of tracks per bank */
    numberOfTracks: number;
    /** The address to send Reaper OSC messages to */
    remoteAddress: string;
    /** The port to send Reaper OSC messages to */
    remotePort: number;
}
