/**
 * VNLH-VND SDK — Entry Point
 * Public API của toàn bộ VNLH-VND SDK.
 *
 * Cách sử dụng:
 *   import { VnlhSdk, anchorToGovChain, routeAndScreen } from '../vnlh';
 *
 * Kiến trúc SDK:
 *   ┌─────────────────────────────────────────────────────────────┐
 *   │  VNLH-VND SDK v1.0                                          │
 *   │  ┌──────────────┐ ┌─────────────────┐ ┌─────────────────┐  │
 *   │  │ swift-session│ │ settlement-engine│ │ gov-chain       │  │
 *   │  │ OAuth2 SWIFT │ │ VND netting      │ │ VNLH ledger     │  │
 *   │  │ Security SDK │ │ FX control       │ │ anchor/query    │  │
 *   │  │ v2.17.5-6    │ │ AML screening    │ │ M1→M2→M3        │  │
 *   │  └──────────────┘ └─────────────────┘ └─────────────────┘  │
 *   │  ┌──────────────────────────────────────────────────────┐   │
 *   │  │  governance-policy — Institutional framework          │   │
 *   │  │  (Lập pháp / Hành pháp / Tư pháp / Kiểm toán /      │   │
 *   │  │   Chính quyền địa phương)                             │   │
 *   │  └──────────────────────────────────────────────────────┘   │
 *   └─────────────────────────────────────────────────────────────┘
 */

export * from './types';
export * from './constants';
export * from './swift-session';
export * from './gov-chain';
export * from './settlement-engine';
export * from './governance-policy';
export * from './kyc-engine';

import { SDK_VERSION } from './constants';

/** Thông tin phiên bản SDK */
export const VnlhSdk = {
  version: SDK_VERSION.VNLH_SDK,
  swiftSdkVersion:    SDK_VERSION.SWIFT_SDK,
  securitySdkVersion: SDK_VERSION.SECURITY_SDK,
  iso20022Year:       SDK_VERSION.ISO20022,

  toString() {
    return [
      `VNLH-VND SDK v${this.version}`,
      `SWIFT SDK v${this.swiftSdkVersion}`,
      `SWIFT Security SDK v${this.securitySdkVersion}`,
      `ISO 20022 ${this.iso20022Year}`,
    ].join(' | ');
  },
} as const;
