matchRefreshOutcome — @gj-kit/expo-auth
@gj-kit/expo-auth에서 공개하는 function입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { matchRefreshOutcome } from '@gj-kit/expo-auth';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”/** * Exhaustive matcher over the five endings. TypeScript does not force exhaustiveness on raw * `switch`/`if` (§4.1-③ — `assertNever` is only an opt-in pattern), so the library ships a * consumption form where a missing handler key is a **compile error**. */declare function matchRefreshOutcome<T>(outcome: RefreshOutcome, handlers: { readonly refreshed: (outcome: Extract<RefreshOutcome, { status: 'refreshed'; }>) => T; readonly adopted: (outcome: Extract<RefreshOutcome, { status: 'adopted'; }>) => T; readonly 'signed-out': (outcome: Extract<RefreshOutcome, { status: 'signed-out'; }>) => T; readonly invalid: (outcome: Extract<RefreshOutcome, { status: 'invalid'; }>) => T; readonly transient: (outcome: Extract<RefreshOutcome, { status: 'transient'; }>) => T;}): T;이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/expo-auth - 버전:
0.1.1 - 공개 entry:
. - 소스: GitHub
구현 주석
섹션 제목: “구현 주석”Exhaustive matcher over the five endings. TypeScript does not force exhaustiveness on raw
switch/if (§4.1-③ — assertNever is only an opt-in pattern), so the library ships a
consumption form where a missing handler key is a compile error.