import { IgrColumnGroupDescription } from "./igr-column-group-description";
import { ColumnGroupDescriptionCollection as ColumnGroupDescriptionCollection_internal } from "./ColumnGroupDescriptionCollection";
/**
 * Represents a collection of grouping elements that are applied to a data source or provider.
*/
export declare class IgrColumnGroupDescriptionCollection {
    protected createImplementation(): ColumnGroupDescriptionCollection_internal;
    protected _implementation: any;
    get i(): ColumnGroupDescriptionCollection_internal;
    private onImplementationCreated;
    constructor();
    protected _provideImplementation(i: any): void;
    item(index: number, value?: IgrColumnGroupDescription): IgrColumnGroupDescription;
    get count(): number;
    toArray(): IgrColumnGroupDescription[];
    [Symbol.iterator](): Generator<any, void, unknown>;
    /**
 * Gets or sets whether this collection should detach the sync when the target collection changes.
*/
    get shouldDetachOnTargetChange(): boolean;
    set shouldDetachOnTargetChange(v: boolean);
    findByName(name: string): any;
    add(item: IgrColumnGroupDescription): boolean;
    insert(index: number, item: IgrColumnGroupDescription): void;
    clear(): void;
    indexOf(item: IgrColumnGroupDescription): number;
    remove(item: IgrColumnGroupDescription): boolean;
    removeAt(index: number): IgrColumnGroupDescription;
}
