// docs / enums

Enums

TypeSharp supports two enum output modes: const (default) and union. Control this with the --enum-mode flag.

C# input

[TypeSharp]
public enum UserRole
{
    Guest,
    Member,
    Admin
}

Output — const mode

default
$  typesharp generate --enum-mode const 
export const enum UserRole {
    Guest,
    Member,
    Admin
}

Output — union mode

$  typesharp generate --enum-mode union 
export type UserRole = 'Guest' | 'Member' | 'Admin'

Usage in interfaces

export interface UserDto {
    id: number;
    role: UserRole;  // resolved enum reference
}