LocalFileTransport — @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.
Verified import example
Section titled “Verified import example”import { LocalFileTransport } from '@gj-kit/expo-media/core';Signature, parameters, and return type
Section titled “Signature, parameters, and return type”/** * ⚠ **계약: 파일 바이트를 JS 힙으로 읽지 말 것.** 네이티브 스트리밍 업로드여야 한다. * * 근거(§7 하드닝 1): `FileSystem.uploadAsync`(레거시 URLSession 브리지)가 iOS 26에서 파일 기반 * 업로드를 **시작하는 중 프로세스를 종료시킨다** — promise가 reject될 기회조차 없으므로 * 재시도 로직도 에러 보고도 발화하지 않는다. 크래시 리포트에도 앱 코드 프레임이 남지 않아 * 원인 추적에만 수일이 걸렸다. * * expo 기본 어댑터는 `new File(uri).upload(url, { sessionType: 'foreground', * uploadType: BINARY_CONTENT })`를 쓴다. `hardening-guard`가 `uploadAsync` 문자열의 * 재등장을 `src/**` 전역에서 정적 차단한다. */interface LocalFileTransport { putLocalFile(input: PutRequest & { readonly uri: string; }): Promise<{ readonly status: number; }>;}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:
./core - Source: GitHub