Skip to content

AuthorizationSnapshotDto — @gj-kit/expo-workouts

A public interface from @gj-kit/expo-workouts. The signature below is taken directly from the 0.1.1 release declaration.

import { AuthorizationSnapshotDto } from '@gj-kit/expo-workouts';
/**
* 인가 스냅샷. **판정은 하지 않는다** — 원시 사실만 넘긴다.
* iOS: `authorizationStatus`(공유) + `statusForAuthorizationRequest`(시트 여부).
* Android: `getGrantedPermissions()` + `processImportance()` + `declaredPermissions()`.
*/
interface AuthorizationSnapshotDto {
readonly platform: WorkoutsPlatform;
readonly availability: AvailabilityDto;
/** Android: granted permission strings. iOS: share-authorized HK type identifiers. */
readonly granted: readonly string[];
/**
* iOS only, and the reason `write.*` can say `'denied'` rather than a permanent `'undetermined'`:
* `HKHealthStore.authorizationStatus(for:)` per DECLARED type identifier, already reduced to our
* vocabulary (`sharingAuthorized` -> `'granted'`, `sharingDenied` -> `'denied'`,
* `notDetermined` -> `'undetermined'`). It is a SHARE-side fact only — HealthKit never reports a
* read status, which is exactly why every iOS read scope is permanently `'unknown'`.
* `null` on Android, where the direction is encoded in the permission string and `granted` is
* already the whole truth.
*/
readonly statuses?: Readonly<Record<string, 'granted' | 'denied' | 'undetermined'>> | null | undefined;
/** Manifest / Info.plist 선언 집합. 선언되지 않은 scope 요청은 `invalidArgument`가 된다. */
readonly declared: readonly string[];
/** iOS only: a sheet would still appear for at least one requested type. */
readonly wouldPrompt: boolean;
/** Android only: the process is at IMPORTANCE_FOREGROUND (a hard precondition for foreign routes). */
readonly foreground: boolean;
/** AOSP `getExerciseRouteReadAccessType`, already reduced to our vocabulary. iOS: always `'all'`. */
readonly routeAccess: RouteAccess;
/** Android READ_HEALTH_DATA_HISTORY. `null` on iOS — that platform has no wall. */
readonly history: boolean | null;
}

This declaration is the source of truth for parameters, optionality, generics, return values, and public union/type contracts. Check the package golden path and this subpath’s import conditions for required environment, permission, and error boundaries before calling it.

  • Package: @gj-kit/expo-workouts
  • Version: 0.1.1
  • Public entry: .
  • Source: GitHub