27 lines
867 B
TypeScript
27 lines
867 B
TypeScript
|
|
import { Configuration } from '../configurations/CalendarConfig';
|
||
|
|
import { DateService } from '../utils/DateService';
|
||
|
|
import { WorkHoursManager } from '../managers/WorkHoursManager';
|
||
|
|
/**
|
||
|
|
* Interface for column rendering strategies
|
||
|
|
*/
|
||
|
|
export interface IColumnRenderer {
|
||
|
|
render(columnContainer: HTMLElement, context: IColumnRenderContext): void;
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* Context for column rendering
|
||
|
|
*/
|
||
|
|
export interface IColumnRenderContext {
|
||
|
|
currentWeek: Date;
|
||
|
|
config: Configuration;
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* Date-based column renderer (original functionality)
|
||
|
|
*/
|
||
|
|
export declare class DateColumnRenderer implements IColumnRenderer {
|
||
|
|
private dateService;
|
||
|
|
private workHoursManager;
|
||
|
|
constructor(dateService: DateService, workHoursManager: WorkHoursManager);
|
||
|
|
render(columnContainer: HTMLElement, context: IColumnRenderContext): void;
|
||
|
|
private applyWorkHoursToColumn;
|
||
|
|
}
|