Files
Sergei Zharinov 930cf6633c refactor: Rewrite imports with .ts extensions (#40700)
fix: Additional vi.mock path corrections and prettier formatting
2026-01-26 22:48:17 +00:00

23 lines
660 B
TypeScript

import type { PackageDependency } from '../../types.ts';
import type { HomebrewManagerData, UrlParsedResult } from '../types.ts';
export abstract class HomebrewUrlHandler {
abstract readonly type: string;
// Parse URL and return structured result
abstract parseUrl(url: string): UrlParsedResult | null;
// Create dependency object from parsed URL
abstract createDependency(
parsed: UrlParsedResult,
sha256: string | null,
url: string,
): PackageDependency<HomebrewManagerData>;
// Build new URLs for version update
abstract buildArchiveUrls(
managerData: HomebrewManagerData,
newVersion: string,
): string[] | null;
}