UNPKG

@jbouduin/holidays-lib

Version:
25 lines 1.09 kB
import { IBaseHoliday } from '../holidays'; import { Cycle } from '../types'; import { Category } from '../types'; import { IDataExtractor } from './data-extractor'; import { IFactoryResult } from './factory-result'; export interface IBaseFactory<T extends IBaseHoliday<U>, U> { create(location: string, obj: any): IFactoryResult<T>; } export declare abstract class BaseFactory<T extends IBaseHoliday<U>, U> implements IBaseFactory<IBaseHoliday<U>, U> { private errors; private location; protected dataExtractor: IDataExtractor; private cycle; private category; private validFrom; private validTo; constructor(); protected abstract extractKey(obj: any): U; protected abstract extractData(obj: any): void; protected abstract createHoliday(key: U, category: Category, cycle: Cycle, validFrom: number, validTo: number): T; create(location: string, obj: any): IFactoryResult<T>; protected addError(key: string, ...args: Array<any>): void; private extractBaseHolidayData; } //# sourceMappingURL=base-factory.d.ts.map