UNPKG

@markw65/fit-file-writer

Version:

Javascript Library for writing FitFiles

49 lines (48 loc) 1.52 kB
import { ExtFitField, FitMessageInputs, FitMessageMap, fit_messages } from "./fit-tables"; type keysOf<o> = { [K in keyof o]: K extends string ? K : K extends number ? `${K}` : never; }[keyof o]; export declare function keysOf<o extends object>(o: o): keysOf<o>[]; type FitMessages = typeof fit_messages; type MessageKeys = keyof FitMessages; export type FitDevInfo = { field_num: number; value: number | string; }; export type FitWriterOptions = { noCompressedTimestamps?: boolean; usePreferredRecords?: boolean; }; export declare class FitWriter { private buffer; private offset; private crc; private definitionMap; private nextLocalDef; private localDefs; private scratch; private devFieldTypes; private lastTimeStamp; private options; private ensureSpace; constructor(options?: FitWriterOptions | boolean); private write_crc; private update_crc; private byte; private word; private long; private float; private double; private str; private field; private definition; private file_header; private dev_field_key; time(t: number | Date): number; latlng<T extends number | undefined>(l: T): T; finish(): DataView; private writeFieldValue; getPreferredField(message: FitMessageMap[string], key: string): ExtFitField; writeMessage<T extends MessageKeys>(messageType: T, messageInfo: Partial<FitMessageInputs[T]>, devInfo?: FitDevInfo[] | null, lastUse?: boolean): void; } export {};