import { Line } from '../../primitives';
import { Tokenizer } from './index';
/**
 * Walks over provided lines joining description token into a single string.
 * */
export declare type Joiner = (lines: Line[]) => string;
/**
 * Shortcut for standard Joiners
 * compact - strip surrounding whitespace and concat lines using a single string
 * preserve - preserves original whitespace and line breaks as is
 */
export declare type Spacing = 'compact' | 'preserve' | Joiner;
/**
 * Makes no changes to `spec.lines[].tokens` but joins them into `spec.description`
 * following given spacing srtategy
 * @param {Spacing} spacing tells how to handle the whitespace
 */
export default function descriptionTokenizer(spacing?: Spacing): Tokenizer;
export declare function getJoiner(spacing: Spacing): Joiner;
