MediaKitConfig — @gj-kit/expo-media
@gj-kit/expo-media에서 공개하는 type입니다. package version 0.6.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { MediaKitConfig } from '@gj-kit/expo-media';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”type MediaKitConfig<TAsset, TCollectionId extends string = string> = Omit<MediaUploadConfig<TAsset, TCollectionId>, 'platform'> & { /** * expo 기본 어댑터 위의 **선택 오버라이드**. 각 필드는 개별 교체이며 부분 객체가 아니다 — * `platform`만 갈아끼우고 나머지는 기본값을 그대로 쓰는 조합이 정상이다. */ readonly platform?: PlatformAdapter | undefined; readonly files?: FileSystemAdapter | undefined; readonly localTransport?: LocalFileTransport | undefined; readonly binaryTransport?: BinaryTransport | undefined; readonly hasher?: HashAdapter | undefined; /** 네이티브 경로(로컬 URI → 포스터). 보통 `expoVideoPoster()`(`"./video"`). */ readonly poster?: LocalPosterAdapter | undefined; /** * 바이너리 경로(Blob → 포스터). 보통 `webCanvasVideoPoster()`(`"./web"`). * * ⚠ `poster`와 **입력 타입이 달라 자리를 바꿔 끼우면 컴파일 에러**가 나는 것이 설계다(§6.1-⑥). * 그래서 필드도 둘로 나뉜다 — 하나로 합치면 그 검출력이 사라진다. * ⚠ 주지 않으면 **웹 동영상에 포스터가 붙지 않는다.** 전신 uploader.ts:566-569는 * `posterBlob === undefined`일 때 `createWebVideoPosterBlob(blob)`으로 자동 추출했으므로, * 웹 업로드 경로가 있는 앱이 이 필드를 비우면 그 동작이 조용히 사라진다. * (호출자가 `uploadBinary({ poster })`로 직접 주는 경로는 이 필드와 무관하게 항상 동작한다.) */ readonly binaryPoster?: BinaryPosterAdapter | undefined; readonly posterAtMs?: number | undefined; /** 스테이징 네임스페이스. 기본 `'gj-media'`. `/^[a-z0-9][a-z0-9-]{1,30}$/`(§5.3). */ readonly namespace?: string | undefined;};이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/expo-media - 버전:
0.6.1 - 공개 entry:
. - 소스: GitHub