跳到主要内容
/**
* 代办
*/
export interface Todo {
id: string;
text: string;
completed: boolean;
createAt: number;
}

/** 代办状态 */
export interface TodoState {
todos: Todo[];
/** 当前过滤类型 */
filter: FilterType;

// ************* 执行动作 **********
// 添加事件
addTodo: (text: string) => void;
/** 切换某事件的状态 */
toggleTodo: (id: string) => void;
/** 移除某事件 */
deleteTodo: (id: string) => void;
/** 选择筛选方式 */
setFilter: (filter: FilterType) => void;
/** 清理已完成的事件 */
clearCompleted: () => void;
}

/** 过滤类型 */
export type FilterType = 'all' | 'active' | 'completed';