import { StringCheckerCustomPattern } from '../expansions/string.js';
import { CreateExpression } from '../factories/expression.js';
import { IntegerString } from '../types/integer-string.js';
import '../types/join.js';

type StringCustomPatternArg = keyof StringCheckerCustomPattern;
type StringExpression = CreateExpression<"string", [
    `/${string}/` | `${IntegerString}~` | `~${IntegerString}` | `${IntegerString}~${IntegerString}` | StringCustomPatternArg | ""
]>;

export type { StringExpression };
