Skip to content

isValidDateTimeInterval

isValidDateTimeInterval(start: string, end: string): boolean
import { isValidDateTimeInterval } from "@northguild/gmt/plain/interval";

Return true if start and end form a valid datetime interval — both parseable as

  • ISO PlainDateTime strings and start <= end.
  • Both inputs must be ISO 8601 datetime strings (e.g. "2024-01-01T10:00:00").
  • Equal start === end is valid.
  • Invalid input, malformed strings, or leap-second strings return false.
Parameter Type Description
start string ISO 8601 datetime string (interval start)
end string ISO 8601 datetime string (interval end)

true if start and end form a valid datetime interval, or false on invalid input

isValidDateTimeInterval("2024-01-01T10:00:00", "2024-12-31T23:59:59") // true
isValidDateTimeInterval("2024-01-01T10:00:00", "2024-01-01T10:00:00") // true
isValidDateTimeInterval("2024-12-31T23:59:59", "2024-01-01T10:00:00") // false
isValidDateTimeInterval("invalid", "2024-12-31T23:59:59") // false

plain/interval/validate/isValidDateTimeInterval.ts