import { Config, InternalConfig, InternalHandler } from './types'; export declare class Controller { /** Internal timer to */ private timeout?; /** Sequence that stores the scanned barcode */ private sequence; /** Listeners attached to elements by this instance */ private listener?; config: InternalConfig; handler?: InternalHandler; constructor(config?: Config, handler?: InternalHandler); /** * Adds character(s) to the internal sequence. Returns true if the sequence was reset in the process. */ private addToSequence; /** * Evaluates the sequence against the configured symbologies. */ private evaluateSequence; /** * Resets the internal sequence to the default state. */ private resetSequence; /** * Handles the `keydown` event. */ private keyDown; /** * Attaches a new handler to the controller. */ applyHandler(handler: InternalHandler): void; /** * Attaches a new config to the controller. */ applyConfig(config: Config): void; /** * Attaches a listener to the `config.target` element. */ bind(): (() => void) | undefined; /** * Executes side effects (attaching listeners to a `config.target`). Ran on * each render. */ effect(): () => void; /** * Cleans all side effects (listeners, timeouts). When the symbology scanner is * destroyed (in React, when the component is unmounted.) */ clean(): void; }