@osaedasia/oresume
Version:
A user-friendly library for generating complete Single Page Applications (SPAs)
40 lines (39 loc) • 1.64 kB
TypeScript
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;
}