import type { DocumentType, DocumentMetadata, LintResult } from '../core/types.js'; import { MarkdownParser } from '../core/parser.js'; import { FileReader } from '../infrastructure/FileReader.js'; /** * LintUseCaseの入力 */ export interface LintUseCaseInput { /** ファイルパス(必須) */ filePath: string; /** コンテンツ(指定されていればファイル読み込みをスキップ) */ content?: string; } /** * LintUseCaseの出力 */ export interface LintUseCaseOutput { /** リント結果の配列 */ results: LintResult[]; /** ドキュメントメタデータ */ metadata: DocumentMetadata; } /** * Lint実行ユースケース * ドキュメントタイプに応じたバリデーションを実行する */ export declare class LintUseCase { private readonly parser; private readonly fileReader; private readonly documentType; constructor(parser: MarkdownParser, fileReader: FileReader, documentType: DocumentType); /** * コンテンツまたはファイルパスからリントを実行 */ execute(input: LintUseCaseInput): Promise; /** * ファイルパスからリントを実行 */ executeFromFile(filePath: string): Promise; } //# sourceMappingURL=LintUseCase.d.ts.map