コンテンツにスキップ

TypeScript

@cloudflare/workers-typesパッケージは、ServiceおよびDurableObjectNamespace型を提供します。これらはそれぞれ、サーバーサイドのWorkerEntrypointまたはDurableObject型のための単一の型パラメータを受け取ります。

高階型を使用することで、クライアントサイドのスタブ型(例:すべてのメソッドをasyncに強制する)を自動的に生成します。

例えば:

interface Env {
SUM_SERVICE: Service<SumService>;
COUNTER_OBJECT: DurableObjectNamespace<Counter>
}
export default {
async fetch(req, env, ctx): Promise<Response> {
const result = await env.SUM_SERVICE.sum(1, 2);
return new Response(result.toString());
}
} satisfies ExportedHandler<Env>;