Skip to content

PickerAdapter — @gj-kit/expo-media

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

import { PickerAdapter } from '@gj-kit/expo-media/core';
interface PickerAdapter {
requestLibraryPermission(kinds: readonly MediaKind[]): Promise<MediaPermission>;
requestCameraPermission(): Promise<MediaPermission>;
/**
* ⚠ iOS 원본 fast path 고정 조합(§7.1): `quality: 1` · `exif: true` ·
* `allowsEditing: false` · `preferredAssetRepresentationMode: Current`.
* **단일선택/다중선택이 달라지면 안 된다** — 한쪽만 재인코딩 경로로 빠지면 같은 사진이
* 선택 방식에 따라 다른 바이트로 업로드된다.
*/
pickFromLibrary(input: {
readonly kinds: readonly MediaKind[];
readonly max: number;
}): Promise<readonly PickedAsset[]>;
/**
* 카메라 캡처.
* ⚠ 상위 플로우(`captureAndUpload`)는 **항상 최대 1건**으로 자른다
* (전신 uploader.ts:1008 `result.assets.slice(0, 1)`).
*/
capture(input: {
readonly kind: MediaKind;
}): Promise<readonly PickedAsset[]>;
}

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-media
  • Version: 0.6.1
  • Public entry: ./core
  • Source: GitHub