import { NugetProjectProperties } from "./NugetProjectProperties.mjs";
import { MSBuildEvaluationOutput, MSBuildProject } from "./MSBuildProject.mjs";
import { NugetRegistryInfo } from "./NugetRegistryInfo.mjs";
import { Type } from "arktype";
import { Default } from "arktype/internal/attributes.ts";
//#region src/dotnet/GithubNugetRegistryInfo.d.ts
declare const DefaultGithubTokenEnvVars: readonly ["GH_TOKEN", "GITHUB_TOKEN"];
declare class GithubNugetRegistryInfo extends NugetRegistryInfo {
  static readonly NUGET_PKG_GITHUB_COM = "https://nuget.pkg.github.com";
  /**
   * Returns `https://nuget.pkg.github.com/${GITHUB_REPOSITORY_OWNER}/index.json`
   * or (if GITHUB_REPOSITORY_OWNER is not defined in {@link process.env} nor
   * {@link process.cwd() $CWD}/.env) `undefined`.
   * @returns If GITHUB_REPOSITORY_OWNER is defined, returns the GitHub Package Repository URL endpoint for NuGet pushes (--source).\
   * Otherwise, returns `undefined`
   */
  static getNugetGitHubUrl(): string | undefined;
  /**
   * Creates an instance of GithubNugetRegistryInfo.
   * @param opts The input type of {@link GHNRIOpts.from}
   */
  constructor(opts: typeof GHNRIOpts.inferIn);
}
/**
 * The default value of {@link GHNRIOpts.t.source `source`} is dependent on
 * {@link GHNRI.getNugetGitHubUrl} and will default to an empty string if the
 * environment variable `GITHUB_REPOSITORY_OWNER` is undefined!
 */
declare const GHNRIOpts: Type<{
  project: MSBuildProject | {
    readonly Items: Readonly<Required<MSBuildEvaluationOutput>["Items"]>;
    readonly Properties: Readonly<NugetProjectProperties>;
    readonly Targets: readonly string[];
    readonly TargetResults: Required<MSBuildEvaluationOutput>["TargetResults"][];
  };
  source: Default<string, string>;
  tokenEnvVars: Default<readonly string[], readonly ["GH_TOKEN", "GITHUB_TOKEN"]>;
}>;
//#endregion
export { DefaultGithubTokenEnvVars, GHNRIOpts, GithubNugetRegistryInfo };
//# sourceMappingURL=GithubNugetRegistryInfo.d.mts.map