ENGLISH·COURSE API
    Preparing search index...
    • Where a key's bytes sit, honouring a declared placement.

      Parameters

      • key: string

        The content key

      • manifest: {
            version: 1;
            stores: Record<
                string,
                | { driver: "local"; baseUrl: string; pathPrefix: string }
                | {
                    driver: "s3";
                    bucket: string;
                    region: string;
                    endpoint?: string;
                    forcePathStyle: boolean;
                    pathPrefix: string;
                    visibility: "public" | "signed";
                    publicUrl?: string;
                    signedUrlTtlSeconds?: number;
                }
                | {
                    driver: "gcs";
                    bucket: string;
                    apiEndpoint?: string;
                    pathPrefix: string;
                    visibility: "public"
                    | "signed";
                    publicUrl?: string;
                    signedUrlTtlSeconds?: number;
                },
            >;
            default: string;
            routes: { prefix: string; store: string }[];
            overrides: Record<string, string>;
            assets: Record<string, { store?: string; objectPath?: string }>;
        }

        The parsed location manifest

        • version: 1
        • stores: Record<
              string,
              | { driver: "local"; baseUrl: string; pathPrefix: string }
              | {
                  driver: "s3";
                  bucket: string;
                  region: string;
                  endpoint?: string;
                  forcePathStyle: boolean;
                  pathPrefix: string;
                  visibility: "public" | "signed";
                  publicUrl?: string;
                  signedUrlTtlSeconds?: number;
              }
              | {
                  driver: "gcs";
                  bucket: string;
                  apiEndpoint?: string;
                  pathPrefix: string;
                  visibility: "public"
                  | "signed";
                  publicUrl?: string;
                  signedUrlTtlSeconds?: number;
              },
          >
        • default: string

          Store that answers for a key matching no override and no route.

        • routes: { prefix: string; store: string }[]
        • overrides: Record<string, string>

          Exact key → store name, for single assets that escape their prefix.

        • assets: Record<string, { store?: string; objectPath?: string }>

          Exact key → declared placement. Outranks every other layer.

      Returns string

      The object path within whichever store owns the key

      Prefer this over objectPathFor wherever the manifest is in hand: a declared objectPath replaces BOTH the key and the store's pathPrefix, and only this function knows that.