fitbit-api-client
Version:
## ⚠️ This SDK is not ready for production
157 lines • 3.56 kB
TypeScript
import { SleepLevel } from '../types';
/**
* 睡眠データのレスポンス
*/
export interface SleepResponse {
/**
* 睡眠のデータ一覧
*/
sleeps: SleepData[];
/**
* 睡眠のサマリー
*/
summary: SleepSummary;
}
export declare function SleepResponseFromJson(offsetFromUTCMillis: number, json: unknown): SleepResponse;
/**
* 各日付の睡眠データ
*/
export interface SleepData {
/**
* 睡眠の日付
* 'yyyy-MM-dd'
*/
dateOfSleep: string;
/**
* 睡眠時間(ミリ秒)
* @type {number}
*/
duration: number;
/**
* 睡眠の効率(%)
*/
efficiency: number;
/**
* 睡眠の終了時間
* @type {Date}
*/
endTime: Date;
/**
* 睡眠の情報コード
* 0 = 睡眠ログを生成するのに十分なデータ。
* 1 = 心拍数データが不十分です。
* 2 = 睡眠時間が短すぎます(3 時間未満)。
* 3 = サーバー側の問題。
*/
infoCode: 0 | 1 | 2 | 3;
/**
* メインの睡眠かどうか
*/
isMainSleep: boolean;
/**
* 睡眠ステージの詳細データ
*/
levels: SleepLevels;
/**
* 睡眠のID
*/
logId: bigint;
logType: 'auto_detected' | 'manual';
minutesAfterWakeup?: number;
minutesAsleep?: number;
minutesAwake?: number;
minutesToFallAsleep?: number;
/**
* 睡眠の開始時間
* @type {Date}
*/
startTime: Date;
timeInBed: number;
type: 'stages' | 'classic';
}
/**
* 睡眠のステージ情報
*/
export interface SleepLevels {
/**
* 睡眠レベルのデータセット
*/
data: SleepLevelData[];
/**
* 短いデータセット
* ※typeがstagesの場合のみ含まれます。
* @type {SleepLevelData[]}
*/
shortData?: SleepLevelData[];
/**
* 睡眠レベルのサマリ
*/
summary: SleepLevelSummaryStages | SleepLevelSummaryClassic;
}
/**
* 睡眠レベルのデータ
*/
export interface SleepLevelData {
/**
* 睡眠レベル
* @type {SleepLevel}
*/
level: SleepLevel;
/**
* ステージの開始時間
*/
dateTime: Date;
/**
* ステージの持続時間(秒)
*/
seconds: number;
}
export interface SleepLevelSummaryClassic {
asleep: SleepLevelSummaryClassicItem;
awake: SleepLevelSummaryClassicItem;
restless: SleepLevelSummaryClassicItem;
}
/**
* 睡眠レベルのサマリー
*/
export interface SleepLevelSummaryStages {
deep: SleepLevelSummaryStagesItem;
light: SleepLevelSummaryStagesItem;
rem: SleepLevelSummaryStagesItem;
wake: SleepLevelSummaryStagesItem;
}
export interface SleepLevelSummaryStagesItem {
count: number;
minutes: number;
thirtyDayAvgMinutes: number;
}
export interface SleepLevelSummaryClassicItem {
count: number;
minutes: number;
}
/**
* 睡眠のサマリー全体
*/
export interface SleepSummary {
/**
* 睡眠ステージのサマリー
* ※typeがstagesの場合のみ含まれます。
*/
stages?: SleepSummaryStages;
/**
* 合計睡眠時間(ミリ秒)
*/
totalMinutesAsleep: number;
totalSleepRecords: number;
/**
* 合計ベッド時間(ミリ秒)
*/
totalTimeInBed: number;
}
export interface SleepSummaryStages {
deep: number;
light: number;
rem: number;
wake: number;
}
//# sourceMappingURL=sleep.d.ts.map