콘텐츠로 이동

AuthorizationState — @gj-kit/expo-workouts

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

import { AuthorizationState } from '@gj-kit/expo-workouts';
/**
* Availability and authorization fused into ONE union. Reading a scope's status on a platform that
* has no usable health store is **unrepresentable** rather than merely discouraged.
*/
type AuthorizationState = {
readonly availability: 'unavailable';
readonly reason: 'platformTooOld' | 'notSupported';
} | {
readonly availability: 'updateRequired';
} | {
readonly availability: 'available';
/** Every scope is always present — no `undefined` holes to guard. */
readonly read: Readonly<Record<Scope, ScopeStatus>>;
readonly write: Readonly<Record<Scope, ScopeStatus>>;
/** Android READ_HEALTH_DATA_HISTORY. Always `'unknown'` on iOS — that platform has no wall,
* and reporting a grant the user never gave would be a lying field. */
readonly history: ScopeStatus;
readonly routeAccess: RouteAccess;
};

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

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

Availability and authorization fused into ONE union. Reading a scope’s status on a platform that has no usable health store is unrepresentable rather than merely discouraged.