/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { DoCheck, IterableDiffers, NgIterable, OnChanges, SimpleChanges, TemplateRef, TrackByFunction, ViewContainerRef } from '@angular/core';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare class KForOfContext<T> {
    $implicit: T;
    kForOf: NgIterable<T>;
    index: number;
    count: number;
    constructor($implicit: T, kForOf: NgIterable<T>, index: number, count: number);
    get first(): boolean;
    get last(): boolean;
    get even(): boolean;
    get odd(): boolean;
}
/**
 * @hidden
 */
export declare class KForOf<T> implements DoCheck, OnChanges {
    private _viewContainer;
    private _template;
    private _differs;
    kForOf: NgIterable<T>;
    kForTrackBy: TrackByFunction<T>;
    private _differ;
    constructor(_viewContainer: ViewContainerRef, _template: TemplateRef<KForOfContext<T>>, _differs: IterableDiffers);
    set kForTemplate(value: TemplateRef<KForOfContext<T>>);
    ngOnChanges(changes: SimpleChanges): void;
    ngDoCheck(): void;
    private _applyChanges;
    static ɵfac: i0.ɵɵFactoryDeclaration<KForOf<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<KForOf<any>, "[kFor][kForOf]", never, { "kForOf": { "alias": "kForOf"; "required": false; }; "kForTrackBy": { "alias": "kForTrackBy"; "required": false; }; "kForTemplate": { "alias": "kForTemplate"; "required": false; }; }, {}, never, never, true, never>;
}
/**
 * @hidden
 */
export declare function getTypeNameForDebugging(type: any): string;
