MediaKit — @gj-kit/expo-media
A public interface from @gj-kit/expo-media. The signature below is taken directly from the 0.6.1 release declaration.
Verified import example
Section titled “Verified import example”import { MediaKit } from '@gj-kit/expo-media';Signature, parameters, and return type
Section titled “Signature, parameters, and return type”/** * 골든패스 킷. expo 기본 어댑터(platform·files·localTransport·binaryTransport·hasher·staging)가 * 이미 채워져 있다. * * ⚠ 선택 능력은 **구체 킷을 반환하는 `with*`**로 부착한다(§3.1). `with*`는 자기 자신을 넓히지 * 않고 새 객체를 반환하므로 조건부 타입이 0이다 — V3가 실측한 "타입 애노테이션 한 번에 전 기능이 * 소멸하는" 붕괴가 **표현 불가능**하다. */interface MediaKit<TAsset, TCollectionId extends string = string> extends LocalUploads<TAsset, TCollectionId>, BinaryUploads<TAsset, TCollectionId> { readonly platform: PlatformAdapter; readonly files: FileSystemAdapter; readonly staging: StagingCache; /** * ⚠ **공개 필드다**(V9 요구). memorylog2 `src/sync/hashFile.ts`가 `hashLocalFile`을 재export하고 * `src/sync/uploadAsset.ts:14,22`가 그것을 쓴다. 이 필드가 없으면 앱 어댑터가 위임할 대상이 * 없어 동기화 엔진이 해시 함수를 잃는다(§5.7.2-⑦). */ readonly hasher: HashAdapter; withPicker(picker: PickerAdapter, /** * 웹에서 피커 자산을 업로드하는 앱은 `loader`만 주면 된다 — `uploads`는 킷 자신 * (`BinaryUploads`)이 채운다. 생략 시 웹 피커 업로드는 `platform-unsupported`다(§5.7.4). */ options?: { readonly web?: { readonly loader: BinarySourceLoader; } | undefined; } | undefined): PickerFlows<TAsset, TCollectionId>; withDeviceLibrary(adapter: DeviceLibraryAdapter): DeviceKit<TAsset, TCollectionId>; withDeviceSave(adapter: MediaLibrarySaveAdapter): MediaSaver;}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.
Release context
Section titled “Release context”- Package:
@gj-kit/expo-media - Version:
0.6.1 - Public entry:
. - Source: GitHub