콘텐츠로 이동

SaveTarget — @gj-kit/expo-media

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

import { SaveTarget } from '@gj-kit/expo-media/core';
/**
* 저장 타깃(§6.1-⑦).
* 전신은 `platformOS:'web'` + `mediaLibrary` 동시 주입이 통과했고, 결과로 보고되는 `mode`와
* 실제 동작이 어긋날 수 있었다. 판별 유니언이면 무효 조합이 **표현 불가능**해지고
* `SaveResult.mode`가 `target.kind`에서 파생되므로 보고와 실동작이 어긋날 수 없다.
*/
type SaveTarget = {
readonly kind: 'media-library';
readonly files: FileSystemAdapter & FileDownloadAdapter;
readonly library: MediaLibrarySaveAdapter;
} | {
readonly kind: 'browser-download';
readonly browser: BrowserSaveAdapter;
};

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

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

저장 타깃(§6.1-⑦). 전신은 platformOS:'web' + mediaLibrary 동시 주입이 통과했고, 결과로 보고되는 mode와 실제 동작이 어긋날 수 있었다. 판별 유니언이면 무효 조합이 표현 불가능해지고 SaveResult.modetarget.kind에서 파생되므로 보고와 실동작이 어긋날 수 없다.