Skip to content

StagingCache — @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.

import { StagingCache } from '@gj-kit/expo-media';
interface StagingCache extends Brand<'StagingCache'> {
/** `${namespace}-upload-`. */
readonly prefix: string;
/**
* cleanup의 유일한 판정 근거.
*
* 전신은 `uri.includes(PREFIX)` 한 줄이었다(deviceUploadCache.ts:29). 그 술어는
* `file:///other/dir/memorylog-upload-x.jpg`처럼 **우리가 만들지 않은 경로**도 참으로 만들고,
* 프리픽스가 중간에 낀 임의의 경로까지 삭제 대상에 넣는다. 3조건으로 좁힌다:
* (i) 앱 캐시 디렉토리로 시작 (ii) 파일명이 prefix로 **시작** (iii) 하위 경로 없음
*/
owns(uri: string | null | undefined): boolean;
/** 스테이징 사본이 놓일 자리. 캐시 디렉토리가 없으면 `null`. */
uriFor(asset: DeviceAssetRef): string | null;
/**
* 스테이징 사본 삭제. `owns()`가 false면 **no-op**이다.
* 실패는 삼킨다 — 누수의 대가는 디스크 비용뿐이고, 정리 실패로 업로드 결과를 뒤집을 이유가 없다.
*/
cleanup(uri: string | null | undefined): Promise<void>;
}

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: .
  • Source: GitHub