import { Directive, inject, input, TemplateRef } from '@angular/core';
/**
* Registers a projected header cell template against a column key for
* {@link TableComponent}.
*
* When present, the table renders the template instead of the plain
* `col.header` text for the matching column.
*
* @example
* ```html
*
*
*
* ```
*/
@Directive({
selector: '[africaniesHeaderCellDef]',
standalone: true,
})
/**
* Registers a projected header cell template against a column key for {@link TableComponent}.
*/
export class HeaderCellDefDirective {
/** Template projected into the matching column header cell. */
readonly template = inject(TemplateRef);
/**
* Column key this template binds to — must match a {@link TableColumn.key}.
*/
readonly africaniesHeaderCellDef = input.required();
}