import { type Document } from '@nodecfdi/cfdi-core'; import { type ExpressionExtractorInterface } from '#src/types'; export default class DiscoverExtractor implements ExpressionExtractorInterface { private readonly _expressions; constructor(...expressions: ExpressionExtractorInterface[]); defaultExtractors(): ExpressionExtractorInterface[]; currentExpressionExtractors(): ExpressionExtractorInterface[]; matches(document: Document): boolean; uniqueName(): string; obtain(document: Document): Record; extract(document: Document): string; format(values: Record, type?: string): string; protected findByUniqueName(uniqueName: string): ExpressionExtractorInterface | null; protected findMatch(document: Document): ExpressionExtractorInterface | null; protected getFirstMatch(document: Document): ExpressionExtractorInterface; }