/** * @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; export declare namespace Github { /** * Options for GitHub API requests via fetch */ interface FetchOptions { /** Timeout in milliseconds for GitHub API requests */ timeout?: Duration; } 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; private doFetch; } /** * Uber-minimal github client */ class Repo extends Directory { constructor(org: string, repo: string, branch: string, options?: FetchOptions, cache?: Cache, auth?: string); } } export {}; //# sourceMappingURL=Github.d.ts.map