claritykit-svelte
Version:
A comprehensive Svelte component library focused on accessibility, ADHD-optimized design, developer experience, and full SSR compatibility
66 lines • 1.63 kB
TypeScript
/**
* KanbanBoard Component Types
* TypeScript definitions for the KanbanBoard component
*/
export interface Task {
id: string;
name: string;
notes?: string;
status: string;
priority: number;
due_date?: string;
completion_date?: string;
estimated_effort?: number;
metadata?: {
projects?: Array<{
id: string;
name: string;
}>;
areas?: Array<{
id: string;
name: string;
}>;
project_name?: string;
area_name?: string;
project_id?: string;
area_id?: string;
};
created_at: string;
updated_at: string;
}
export interface KanbanColumn {
status: string;
title: string;
icon: string;
variant: 'default' | 'success' | 'warning' | 'error' | 'info' | 'neutral' | 'secondary';
}
export interface KanbanBoardProps {
tasks?: {
[status: string]: Task[];
};
loading?: boolean;
refreshing?: boolean;
error?: string;
class?: string;
[key: string]: any;
}
export interface TaskMovedEvent {
taskId: string;
newStatus: string;
}
export interface CreateTaskEvent {
name?: string;
notes?: string;
priority?: number;
status?: string;
[key: string]: any;
}
export interface CreateProjectEvent {
name: string;
description: string;
}
export type SortBy = 'priority' | 'created_at' | 'name' | 'due_date';
export type SortOrder = 'asc' | 'desc';
export type FilterBy = 'all' | 'area' | 'project' | 'priority';
export type SecondaryFilterBy = '' | 'project' | 'priority';
//# sourceMappingURL=types.d.ts.map