@dataroadinc/setup-auth
Version:
CLI tool and programmatic API for automated OAuth setup across cloud platforms
28 lines (27 loc) • 1.16 kB
TypeScript
import { GcpAuthenticatedIdentity } from "../creds/identity.js";
import { BaseGcpIamManager, IamPolicy } from "./base-iam.js";
import { ProjectPermission, ProjectRole } from "./constants.js";
export declare class GcpProjectIamManager extends BaseGcpIamManager {
private projectsClient;
private serviceUsageClient;
private authClient;
private projectId;
private readonly projectManager;
constructor(identity: GcpAuthenticatedIdentity, organizationId: string, projectId: string);
protected initializeSpecific(): Promise<void>;
protected formatResourceName(projectId: string): string;
checkPermissions(): Promise<{
missingPermissions: ProjectPermission[];
}>;
getIamPolicy(): Promise<IamPolicy>;
setIamPolicy(policy: IamPolicy): Promise<void>;
addRoles(userId: string, roles: ProjectRole[]): Promise<boolean>;
checkServicesEnabled(): Promise<boolean>;
enableRequiredServices(): Promise<void>;
ensurePermissions(): Promise<void>;
}
interface TableRow {
[key: string]: string | boolean | number | null | undefined;
}
export declare function displayTable(data: TableRow[]): void;
export {};