UNPKG

@osaedasia/oresume

Version:

A user-friendly library for generating complete Single Page Applications (SPAs)

40 lines (39 loc) 1.64 kB
import { IPatternService } from "../../../domain/definitions/interfaces/parser/IPatternService"; import { Pattern, PatternType } from "../../../domain/definitions/types/Pattern"; /** * Abstract base class providing pattern management functionality for HTML content and attribute processing. * Implements standardized pattern creation, matching, and handling mechanisms. * @implements {IPatternService} */ export declare abstract class APatternService implements IPatternService { /** * Defines the specific pattern type handled by this service implementation. */ abstract readonly type: PatternType; /** * Standard prefix used for pattern markers in the templating system. */ private readonly _patternPrefix; /** * Standard suffix used for pattern markers in the templating system. */ private readonly _patternSuffix; /** @inheritDoc */ createPatternMarker(index: number): string; /** @inheritDoc */ getPatternRegex(): RegExp; /** @inheritDoc */ abstract getAttributeValueRegex(): RegExp; /** @inheritDoc */ abstract createPatternObject(index: number, value: unknown): Pattern | null; /** @inheritDoc */ abstract handleAttributeMatch(match: RegExpMatchArray, pattern: Pattern): string; /** @inheritDoc */ abstract handleContentMatch(match: RegExpMatchArray, pattern: Pattern): string; /** * Constructs a complete pattern string using predefined format. * @param {number | string} value Value to be incorporated into the pattern. * @returns {string} Formatted pattern string. */ private _createPattern; }