mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
* add smpte-timecode type definitions and tests * modify reference types * set strictNullChecks to true * remove unnecessary rule
42 lines
1.2 KiB
TypeScript
42 lines
1.2 KiB
TypeScript
// Type definitions for smpte-timecode 1.2
|
|
// Project: https://github.com/CrystalComputerCorp/smpte-timecode
|
|
// Definitions by: DoYoung Ha <https://github.com/hados99>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
|
|
/// <reference types="node" />
|
|
|
|
declare const Timecode: {
|
|
(timecode?: Timecode.TIMECODE, frameRate?: Timecode.FRAMERATE, dropFrame?: boolean): Timecode.TimecodeInstance;
|
|
new (timecode?: Timecode.TIMECODE, frameRate?: Timecode.FRAMERATE, dropFrame?: boolean): Timecode.TimecodeInstance;
|
|
};
|
|
|
|
declare namespace Timecode {
|
|
type TIMECODE = number | string | Date | TimecodeObject;
|
|
type FRAMERATE = 23.976 | 24 | 25 | 29.97 | 30 | 50 | 59.94 | 60;
|
|
|
|
interface TimecodeObject {
|
|
hours: number;
|
|
minutes: number;
|
|
seconds: number;
|
|
frames: number;
|
|
}
|
|
|
|
interface TimecodeInstance {
|
|
add(timecode: TIMECODE, negative?: boolean, rollOverMaxHours?: number): TimecodeInstance;
|
|
subtract(timecode: TIMECODE, rollOverMaxHours?: number): TimecodeInstance;
|
|
toDate(): Date;
|
|
toString(options?: string): string;
|
|
valueOf(): number;
|
|
|
|
hours: number;
|
|
minutes: number;
|
|
seconds: number;
|
|
frames: number;
|
|
dropFrame: boolean;
|
|
frameCount: number;
|
|
frameRate: number;
|
|
}
|
|
}
|
|
|
|
export = Timecode;
|