/** * @license * Copyright 2022-2026 Matter.js Authors * SPDX-License-Identifier: Apache-2.0 */ import { Duration } from "#time/index.js"; import { Bytes } from "./Bytes.js"; type Cache = (name: string, generator: (name: string) => Promise) => Promise; /** * Options for GitHub API requests via fetch */ export interface FetchOptions { /** Timeout in milliseconds for GitHub API requests */ timeout?: Duration; } export declare class Directory { #private; readonly url: string; constructor(url: string, cache: Cache, options?: FetchOptions, auth?: string); ls(): Promise; cd(name: string): Promise; get(name: string): Promise; getBinary(name: string): Promise; private load; private find; private fetch; private fetchBinary; /** * Perform the actual fetch request with common options */ private doFetch; } /** * Uber-minimal github client */ export declare class Repo extends Directory { constructor(org: string, repo: string, branch: string, options?: FetchOptions, cache?: Cache, auth?: string); } export {}; //# sourceMappingURL=Github.d.ts.map