package com.tencent.qian.webview.model;

import androidx.annotation.NonNull;

/**
 * 业务回调入口。
 *
 * <p>两类回调：
 * <ul>
 *   <li>{@link #onSignResult} — {@code qianapp://} 协议回调</li>
 *   <li>{@link #onEvent} — 容器层非协议事件</li>
 * </ul>
 *
 * <p>派发线程：SDK 内部保证 callback 始终在主线程触发，客户无需 {@code runOnUiThread}。
 */
public interface SignCallback {

    /**
     * 命中 {@code qianapp://} 协议时回调。
     */
    void onSignResult(@NonNull SignResult result);

    /**
     * 容器层观测事件。默认空实现，客户按需重写。
     */
    default void onEvent(@NonNull SdkEvent event) {
        // no-op by default
    }
}
