# @coding-flow/flow-types 中文文档

规范地址：https://npmcn.com/package/%40coding-flow/flow-types/

版本：0\.2\.17
npm 元数据更新时间：2026-11-07T09:53:26.695Z
中文译文更新时间：2026-11-10T08:55:40.706Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40coding-flow/flow-types
原文对照：https://npmcn.com/package/%40coding-flow/flow-types/?lang=original
项目主页：https://github.com/codingapi/flow-frontend
源码仓库：https://github.com/codingapi/flow-frontend

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：42.5 kB，21 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：1 个
- peer 依赖：react \>=18，react-dom \>=18
- 首次发布：2026-03-17T06:24:09.848Z
- 最新版本发布：2026-11-07T09:53:26.520Z
- 近 30 天下载量：2348（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：82（近 12 个月 82 个）

## 中文简介

流动引擎类型

## 安装

```sh
npm install @coding-flow/flow-types
```

也可以使用：`pnpm add @coding-flow/flow-types`、`yarn add @coding-flow/flow-types`、`bun add @coding-flow/flow-types`

## README

# @coding-flow/flow-types

Flow Engine 前端 TypeScript 类型定义库，提供流程实例、表单、审批等业务类型定义。

## 简介

`flow-types` 是 Flow Engine 的类型定义库，为整个前端项目提供统一的业务类型系统。

### 依赖关系

-   **依赖**: `@coding-flow/flow-core`

## Setup

安装依赖:

```bash
pnpm install
```

## 开发

构建库:

```bash
pnpm run build
```

监听模式构建:

```bash
pnpm run dev
```

## 核心类型

### 流程定义类型

-   `Workflow` - 工作流定义
-   `WorkflowMeta` - 工作流元数据

### 节点类型

-   `FlowNode` - 节点基础类型
-   `NodeType` - 节点类型枚举
-   节点具体类型：`StartNode`, `EndNode`, `ApprovalNode`, `HandleNode`, `NotifyNode`, `RouterNode`, `SubProcessNode`, `DelayNode`, `TriggerNode`, `ConditionNode`, `ParallelNode`, `InclusiveNode` 等

### 策略类型

-   `NodeStrategy` - 节点策略基础类型
-   `WorkflowStrategy` - 工作流策略类型
-   策略具体类型：`MultiOperatorAuditStrategy`, `TimeoutStrategy` 等

### 动作类型

-   `FlowAction` - 动作基础类型
-   `ActionType` - 动作类型枚举
-   动作具体类型：`PassAction`, `RejectAction`, `SaveAction`, `AddAuditAction`, `DelegateAction`, `ReturnAction`, `TransferAction`, `CustomAction`

### 表单类型

-   `FlowForm` - 表单定义
-   `FormField` - 表单字段定义
-   `FormFieldPermission` - 字段权限类型

### 记录类型

-   `FlowRecord` - 流程记录类型
-   `FlowState` - 流程状态枚举
-   `RecordState` - 记录状态枚举

### 审批类型

-   `ApprovalTask` - 审批任务
-   `ApprovalResult` - 审批结果

## 类型系统特点

### 层次化节点结构

使用 `blocks` 属性实现节点间的层次关系:

```typescript
interface FlowNode {
  id: string;
  name: string;
  type: NodeType;
  blocks?: FlowNode[];  // 子节点列表（块节点包含子节点）
  strategies?: NodeStrategy[];
  actions?: FlowAction[];
}
```

### 节点分类

-   **基础节点** (9 种): START, END, APPROVAL, HANDLE, NOTIFY, ROUTER, SUB\_PROCESS, DELAY, TRIGGER
-   **块节点** (3 种): CONDITION, PARALLEL, INCLUSIVE（包含子节点）
-   **分支节点** (3 种): CONDITION\_BRANCH, PARALLEL\_BRANCH, INCLUSIVE\_BRANCH

## 使用示例

```typescript
import type { Workflow, FlowNode, NodeType } from '@coding-flow/flow-types';

// 定义一个工作流
const workflow: Workflow = {
  id: 'wf-001',
  name: '请假审批流程',
  nodes: [
    {
      id: 'start-1',
      name: '开始',
      type: 'START' as NodeType
    },
    {
      id: 'approval-1',
      name: '经理审批',
      type: 'APPROVAL' as NodeType,
      strategies: [...],
      actions: [...]
    }
  ]
};
```

## Learn more

-   [Rslib documentation](https://lib.rsbuild.io/) - Rslib 特性和 API
-   [Flow Engine Docs](https://github.com/codingapi/flow-engine) - 完整文档
-   [CLAUDE.md](https://npmcn.com/package/CLAUDE.md) - 开发指南

## 常见问题

### @coding-flow/flow-types 是什么？

流动引擎类型

### 如何安装 @coding-flow/flow-types？

在项目目录运行 npm install @coding-flow/flow-types，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：react（\>=18）、react-dom（\>=18）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @coding-flow/flow-types 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @coding-flow/flow-types 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @coding-flow/flow-types 可以商用吗？

@coding-flow/flow-types 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @coding-flow/flow-types 的下载量有多少？

根据 npm 官方下载统计，@coding-flow/flow-types 在 2026/10/10 – 2026/11/08 这 30 天内被下载 2,348 次，日均约 78 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @coding-flow/flow-types 还在维护吗？

最新版本 0\.2\.17 发布于 2026/11/07（3 天前）；至今共发布 82 个版本，其中过去 12 个月发布了 82 个；首次发布于 2026/03/17。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

