import type { Argv, MiddlewareFunction } from "yargs";
import type { ValidationRule } from "../validators/lib.js";
export interface AuthenticatedCommandOptions {
  requireSelfHostedEndpoint?: boolean;
  additionalValidators?: ValidationRule<unknown>[];
  additionalMiddleware?: MiddlewareFunction[];
}
export declare class AuthenticatedCommandBuilder {
  private options;
  private constructor();
  build(yargs: Argv, customBuilder?: (yargs: Argv) => Argv): Argv;
  static create(
    options?: AuthenticatedCommandOptions
  ): AuthenticatedCommandBuilder;
  static withSelfHosted(
    options?: Omit<AuthenticatedCommandOptions, "requireSelfHostedEndpoint">
  ): AuthenticatedCommandBuilder;
  static withMiddleware(
    middleware: MiddlewareFunction[],
    options?: Omit<AuthenticatedCommandOptions, "middleware">
  ): AuthenticatedCommandBuilder;
  private addStandardOptions;
  private addValidationChecks;
}
//# sourceMappingURL=authenticated-command-builder.d.ts.map
