import { Invert } from "../invert"; import { DisableNever } from "../never"; type NotContainTheMarker = Invert; type NotContainNonMarker = Invert; type NotStringLiteral = NotContainTheMarker & NotContainNonMarker; type IsString = [T] extends [string] ? unknown : never; /** * String type without union. */ export type ExactlyString = DisableNever & NotStringLiteral & IsString;