import { Stream } from '../index'; /** * Delays events until a certain amount of silence has passed. If that timespan * of silence is not met the event is dropped. * * Marble diagram: * * ```text * --1----2--3--4----5| * debounce(60) * -----1----------4--| * ``` * * Example: * * ```js * import fromDiagram from 'xstream/extra/fromDiagram' * import debounce from 'xstream/extra/debounce' * * const stream = fromDiagram('--1----2--3--4----5|') * .compose(debounce(60)) * * stream.addListener({ * next: i => console.log(i), * error: err => console.error(err), * complete: () => console.log('completed') * }) * ``` * * ```text * > 1 * > 4 * > completed * ``` * * @param {number} period The amount of silence required in milliseconds. * @return {Stream} */ export default function debounce(period: number): (ins: Stream) => Stream;