typeas
Version:
Library for checking data values and type safety
12 lines (9 loc) • 409 B
text/typescript
import { Join } from "../types/join";
type EachExpression = "[]" | "";
type NoneExpression = "!" | "?";
type ArgsExpression<Args extends string[]> = `(${Join<Args, ",">})` | "";
type CommentExpression = `#${string}` | "";
export type CreateExpression<
Type extends string,
Args extends string[] = []
> = `${Type}${EachExpression}${NoneExpression}${ArgsExpression<Args>}${CommentExpression}`;