SaveResult — @gj-kit/expo-workouts
@gj-kit/expo-workouts에서 공개하는 type입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { SaveResult } from '@gj-kit/expo-workouts';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”/** * A discriminated union, so `nativeId` does not EXIST on the `pendingUnlock` branch. That branch * only ever appears on a locked device, i.e. never during development, so a type that merely made * `nativeId` optional would be forgotten by everyone. */type SaveResult = { readonly status: 'saved'; /** Echo of `WorkoutWrite.id`. */ readonly id: string; /** The platform's own id for the stored workout. */ readonly nativeId: string; readonly route: Exclude<RouteWriteOutcome, 'deferred'>; /** How many points actually reached the store. Compare it against what you sent to see how * much our mandatory hygiene removed. */ readonly routePointsWritten: number;} | { /** * The store accepted the workout but cannot confirm it while the device is locked. * **Do not re-save blindly.** Call `saveWorkout` again with the SAME `id` and `version` once * the device is unlocked; that call is idempotent and completes the route. */ readonly status: 'pendingUnlock'; readonly id: string; readonly route: 'deferred'; readonly routePointsWritten: 0;};이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/expo-workouts - 버전:
0.1.1 - 공개 entry:
. - 소스: GitHub
구현 주석
섹션 제목: “구현 주석”A discriminated union, so nativeId does not EXIST on the pendingUnlock branch. That branch
only ever appears on a locked device, i.e. never during development, so a type that merely made
nativeId optional would be forgotten by everyone.