import { ExtendedResult, Parser } from 'mini-parse'; import { AbstractElem, AbstractElemBase } from './AbstractElems.js'; export declare const word: Parser; export declare const wordNum: import('../../mini-parse/src/CombinatorTypes.js').OrParser<[Parser, Parser]>; export declare const unknown: Parser; export declare const blockComment: Parser; export declare const comment: import('../../mini-parse/src/CombinatorTypes.js').OrParser<[() => import('../../mini-parse/src/CombinatorTypes.js').SeqParser<[import('../../mini-parse/src/CombinatorTypes.js').ParserFromArg<"//">, import('../../mini-parse/src/CombinatorTypes.js').ParserFromArg>]>, Parser]>; export declare const eolf: Parser; /** ( a1, b1* ) with optinoal comments, spans lines */ export declare const wordNumArgs: Parser; type ByKind = U extends { kind: T; } ? U : never; type TagsType = Record, any[]>; /** create an AbstractElem from parse results * @param named keys in the tags result to copy to * like named fields in the abstract elem (as a single value) * @param namedArray keys in the tags result to copy to * like named fields in the abstract elem (as an array) */ export declare function makeElem, // FnElem T extends TagsType>(kind: K, er: ExtendedResult>, tags?: (keyof T)[], tagArrays?: (keyof T)[]): Partial; export {};