/**
 * THIS IS GENERATED CODE!
 * PLEASE DO NOT MODIFY - ALL YOUR WORK WOULD BE LOST!
 */
export declare const typescriptDeclarationFixConstant = 1;
import { UiEvent } from "./UiEvent";
import { TeamAppsEvent } from "../modules/util/TeamAppsEvent";
import { UiComponentConfig } from "./UiComponentConfig";
import { UiTemplateConfig } from "./UiTemplateConfig";
import { UiItemViewItemGroupConfig } from "./UiItemViewItemGroupConfig";
import { UiIdentifiableClientRecordConfig } from "./UiIdentifiableClientRecordConfig";
import { UiItemViewItemBackgroundMode } from "./UiItemViewItemBackgroundMode";
import { UiComponentCommandHandler } from "./UiComponentConfig";
export interface UiItemViewConfig extends UiComponentConfig {
    _type?: string;
    groupHeaderTemplate?: UiTemplateConfig;
    itemGroups?: UiItemViewItemGroupConfig[];
    horizontalPadding?: number;
    verticalPadding?: number;
    groupSpacing?: number;
    itemBackgroundMode?: UiItemViewItemBackgroundMode;
    filter?: string;
}
export interface UiItemViewCommandHandler extends UiComponentCommandHandler {
    setFilter(filter: string): void;
    addItemGroup(itemGroup: UiItemViewItemGroupConfig): void;
    refreshItemGroup(itemGroup: UiItemViewItemGroupConfig): void;
    removeItemGroup(groupId: string): void;
    addItem(groupId: string, item: UiIdentifiableClientRecordConfig): void;
    removeItem(groupId: string, itemId: number): void;
}
export interface UiItemViewEventSource {
    onItemClicked: TeamAppsEvent<UiItemView_ItemClickedEvent>;
}
export interface UiItemView_ItemClickedEvent extends UiEvent {
    groupId: string;
    itemId: number;
}
