Skip to main content

Module ts_codegen

Module ts_codegen 

Source
Expand description

TypeScript client code generation from Router handler metadata

Generates typed async functions that call AllFrame handlers via IPC, eliminating stringly-typed allframe_call invocations.

§Example

use allframe_core::router::{Router, TsField, TsType};

let mut router = Router::new();
router.register("get_user", || async { r#"{"id":1}"#.to_string() });
router.describe_handler("get_user", vec![], TsType::Object(vec![
    TsField::new("id", TsType::Number),
    TsField::new("name", TsType::String),
]));

let ts_code = router.generate_ts_client();
assert!(ts_code.contains("export async function getUser()"));

Structs§

HandlerMeta
Metadata describing a handler’s argument and return types
TsField
A field in a TS object/interface

Enums§

TsType
TypeScript type representation

Functions§

generate_ts_client
Generate a complete TypeScript client module from handler metadata