package com.tencent.qian.webview.model

/**
 * `qianapp://` 协议的 `action` 已知值常量。
 *
 * **设计要点**:
 * - 协议在 wire 层就是 String,SDK 不做 enum 翻译,保留客户拿到原值的能力
 * - 提供常量是为了让客户写 `result.action == SignAction.SIGN` 比写裸字符串更安全
 * - 客户在 `when` / `switch` 的 `else` 分支应当兜底处理未来新增的未知值
 *
 * **跨端一致性**:与 iOS `SignAction` enum(伪命名空间)一一对应。
 *
 * **Phase 2 翻译预期**:Java 端机械翻译为
 * ```java
 * public final class SignAction {
 *     public static final String FILL = "fill";
 *     ...
 *     private SignAction() {}
 * }
 * ```
 */
public object SignAction {
    /** 填写流程完成 */
    public const val FILL: String = "fill"

    /** 签署流程完成 */
    public const val SIGN: String = "sign"

    /** 主动拒绝填写 */
    public const val REJECT_FILL: String = "reject_fill"

    /** 主动拒绝签署 */
    public const val REJECT_SIGN: String = "reject_sign"

    /** 仅查看(无填写/签署动作) */
    public const val VIEW: String = "view"
}
