import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { AllProjects, AllProjects$Outbound } from "./allprojects.js";
import { SingleProject, SingleProject$Outbound } from "./singleproject.js";
/**
 * Project authorization scope. Single-project or all-projects.
 *
 * @remarks
 *  Multi-project use cases are served by minting per-project keys or by
 *  using an all-projects key with `restricted` mode.
 */
export type ProjectScope = {
    all?: AllProjects | undefined;
    single?: SingleProject | undefined;
};
/** @internal */
export declare const ProjectScope$inboundSchema: z.ZodType<ProjectScope, z.ZodTypeDef, unknown>;
/** @internal */
export type ProjectScope$Outbound = {
    all?: AllProjects$Outbound | undefined;
    single?: SingleProject$Outbound | undefined;
};
/** @internal */
export declare const ProjectScope$outboundSchema: z.ZodType<ProjectScope$Outbound, z.ZodTypeDef, ProjectScope>;
export declare function projectScopeToJSON(projectScope: ProjectScope): string;
export declare function projectScopeFromJSON(jsonString: string): SafeParseResult<ProjectScope, SDKValidationError>;
//# sourceMappingURL=projectscope.d.ts.map