[typescript] DateTimeFormat in TypeScript

I want to display a time string in 24 hour format and thought it would be easy in TypeScript. But I can't use the Date.toLocaleTimeString() with options for some reason. Any idea why? They are defined in a separate interface definition.

interface Date {
    toLocaleString(locales?: string[], options?: Intl.DateTimeFormatOptions): string;
    toLocaleString(locale?: string, options?: Intl.DateTimeFormatOptions): string;
}

The other option is to use Intl.DateTimeFormat but the constructors return a Collator?

var DateTimeFormat: {
    new (locales?: string[], options?: DateTimeFormatOptions): Collator;
    new (locale?: string, options?: DateTimeFormatOptions): Collator;
    (locales?: string[], options?: DateTimeFormatOptions): Collator;

Is it a copy paste bug in lib.d.ts (same for NumberFormat) or how am I supposed to use them?

Hopefully it's an easy fix, I'm pretty new to TypeScript so I might have missed something.

This question is related to typescript

The answer is


This should work...

var displayDate = new Date().toLocaleDateString();

alert(displayDate);

But I suspect you are trying it on something else, for example:

var displayDate = Date.now.toLocaleDateString(); // No!

alert(displayDate);