Protobuf .proto TypeScript インターフェース&列挙型 変換ツール
Protocol Buffers(proto2 および proto3)のメッセージ定義、列挙型(enum)、ネストされたフィールドを解析し、クリーンな TypeScript インターフェースに変換します。
/**
* Generated by ToolsAA Protobuf to TypeScript Converter
* Syntax: proto3 | Package: identity.v1
* 100% Client-Side Pure Execution
*/
export enum AccountStatus {
ACCOUNT_STATUS_UNSPECIFIED = 0,
ACCOUNT_STATUS_ACTIVE = 1,
ACCOUNT_STATUS_PENDING_VERIFY = 2,
ACCOUNT_STATUS_SUSPENDED = 3,
ACCOUNT_STATUS_ARCHIVED = 4
}
export type UserProfileAuthCredential =
| { case: 'passwordHash'; value: string }
| { case: 'oauthProviderId'; value: string }
| { case: 'webauthnPublicKey'; value: Uint8Array }
| { case: undefined; value?: undefined };
export interface UserProfile {
/** @field 6 */
metadata: Record<string, string>;
/** @field 1 */
userId: string;
/** @field 2 */
email: string;
/** @field 3 */
displayName?: string;
/** @field 4 */
status?: AccountStatus;
/** @field 5 */
roles: string[];
/** @field 7 */
createdAt: string;
/** @field 8 */
lastLoginAt: string;
/** @oneof auth_credential */
authCredential?: UserProfileAuthCredential;
}
export interface GetUserRequest {
/** @field 1 */
userId: string;
}
export interface ListUsersRequest {
/** @field 1 */
pageSize: number;
/** @field 2 */
pageToken: string;
}
export interface UpdateUserRequest {
/** @field 1 */
user?: UserProfile;
}
サーバー通信なしで proto2 および proto3 構文木を即時ブラウザ解析
TypeScript インターフェース、列挙型、判別共用体、Zod バリデーションスキーマを出力
完全ブラウザ完結処理により、社内機密の gRPC 定義が外部サーバーへ送信されることは一切ありません
ネイティブ Proto3 & Proto2 AST パーサー
メッセージ、列挙型、入れ子型、パッケージ名前空間を厳格な型安全性を備えた TypeScript 宣言へと変換します。
完全ローカル実行とデータ漏洩ゼロ
100% ブラウザ内でコード生成を完結させ、社内機密の gRPC スキーマが外部サーバーに送信されるリスクを根絶します。
gRPC・Zod エコシステム対応の即戦力コード生成
フィールド番号付き JSDoc、カスタマイズ可能な 64 ビット整数マッピング、判別共用体、Zod バリデーションスキーマを出力します。