/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
import { TaskBoardCardProps } from './card/Card.js';
import { TaskBoardColumnProps } from './column/Column.js';
import * as React from 'react';
/**
* Represent the target(props) of the TaskBoardHandle.
*/
export interface TaskBoardHandle {
/**
* The props values of the TackBoard.
*/
props: TaskBoardProps;
}
/**
* Represents the target of the TaskBoardPriority.
*/
export interface TaskBoardPriority {
/**
* Represents the priority of a TaskBoard.
*/
priority: string;
/**
* Represents the color of a TaskBoard.
*/
color: string;
}
/**
* Represent the item model.
*/
interface ItemModel {
/**
* Sets the `id` of an ItemModel.
*/
id: string | number | undefined;
/**
* Determines the title of an ItemModel.
*/
title: string;
/**
* Determines the status of an ItemModel.
*/
status: string;
/**
* Determines of an ItemModel is going to edited.
*/
edit?: boolean;
/**
* @hidden
*/
isPlaceholder?: boolean;
}
/**
* Represents the task board column model.
*/
export interface TaskBoardColumnModel extends ItemModel {
/**
* Determined the index of the TaskBoardTaskModel.
*/
index?: number;
}
/**
* Represents the task board task model.
*/
export interface TaskBoardTaskModel extends ItemModel {
/**
* Determined the description of the TaskBoardTaskModel.
*/
description: string;
/**
* Determined the priority of the TaskBoardTaskModel.
*/
priority: TaskBoardPriority;
/**
* Determined the index of the TaskBoardTaskModel.
*/
index?: number;
}
/**
* Represents the return type of TaskBoardChangeEvent.
*/
export interface TaskBoardChangeEvent {
/**
* Determines the returned data.
*/
data: {}[] | TaskBoardTaskModel[];
/**
* Determines the returned type.
*/
type: string;
/**
* Represents the previous item.
*/
previousItem: TaskBoardColumnModel | TaskBoardTaskModel | null;
/**
* Represents the current item.
*/
item: TaskBoardColumnModel | TaskBoardTaskModel | null;
}
/**
* Represents the props of the TaskBoard component
*/
export interface TaskBoardProps {
/**
* Specifies the column data from type TaskBoardColumnModel.
* Example:
* ```jsx
*
* ```
*/
columnData: TaskBoardColumnModel[];
/**
* Represents the task data from type TaskBoardTaskModel.
* Example:
* ```jsx
*
* ```
*/
taskData: TaskBoardTaskModel[];
/**
* Specifies the priorities of the task board.
* Example:
* ```jsx
*
* ```
*/
priorities: TaskBoardPriority[];
/**
* Specifies a list of CSS classes that will be added to the TaskBoard element.
* Example:
* ```jsx
*
* ```
*/
className?: string | Array;
/**
* Specifies the id that will be added to the TaskBoard element.
* Example:
* ```jsx
*
* ```
*/
id?: string;
/**
* Specifies the `tabIndex` that will be added to the TaskBoard Column and Card elements.
* Example:
* ```jsx
*
* ```
*/
tabIndex?: number;
/**
* Represents the styles that are applied to the TaskBoard.
* Example:
* ```jsx
*
* ```
*/
style?: React.CSSProperties;
/**
* The React elements that will be rendered inside the toolbar of the TaskBoard.
* Example:
* ```jsx
*
*
*
* ```
*/
children?: React.ReactNode;
/**
* Represents the `onChange` event. Triggered after tasks or columns are changed.
* Example:
* ```jsx
* console.log(event.data)} />
* ```
*/
onChange: (event: TaskBoardChangeEvent) => void;
/**
* Represents the TaskBoardCard component.
* Example:
* ```jsx
* {props.title}
} />
* ```
*/
card?: React.ComponentType;
/**
* Represents the TaskBoardColumn component.
* Example:
* ```jsx
* {props.title}
} />
* ```
*/
column?: React.ComponentType;
}
/**
* Represents the [KendoReact TaskBoard component](https://www.telerik.com/kendo-react-ui/components/taskboard).
*
* Accepts properties of type [TaskBoardProps](https://www.telerik.com/kendo-react-ui/components/taskboard/api/taskboardprops).
*
* @remarks
* Supported children components are: {@link TaskBoardToolbar}.
*/
export declare const TaskBoard: React.ForwardRefExoticComponent>;
export {};