콘텐츠로 이동

SyncPage — @gj-kit/expo-workouts

@gj-kit/expo-workouts/core에서 공개하는 interface입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.

import { SyncPage } from '@gj-kit/expo-workouts/core';
interface SyncPage {
/**
* An idempotent UPSERT SET keyed by `id` (or by `clientId` for own writes), never a delta append.
* The same workout may legitimately appear in two consecutive results. Health Connect emits an
* upsertion change even for a write that changed nothing, so the presence of a workout here is not
* a claim that it changed.
*/
readonly added: readonly Workout[];
/** May contain ids this app never held. `remove(unknown id)` MUST be a no-op. */
readonly removed: readonly RemovedWorkout[];
/**
* Persist this together with `added`/`removed` **IN ONE TRANSACTION**. Persisting the cursor
* without the items loses those workouts permanently and the library cannot prevent it.
*/
readonly cursor: WorkoutsSyncCursor;
/** `true` = call `syncWorkouts(result.cursor)` again immediately. */
readonly hasMore: boolean;
}

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/expo-workouts
  • 버전: 0.1.1
  • 공개 entry: ./core
  • 소스: GitHub