@dataroadinc/setup-auth
Version:
CLI tool and programmatic API for automated OAuth setup across cloud platforms
28 lines (27 loc) • 945 B
TypeScript
import { BackoffOptions } from "exponential-backoff";
import { GcpAuthenticatedIdentity } from "../creds/identity.js";
export declare const API_CALL_DELAY = 1000;
export declare const BACKOFF_OPTIONS: BackoffOptions;
export interface IamBinding {
role: string;
members: string[];
}
export interface IamPolicy {
version?: number;
bindings?: IamBinding[];
etag?: string;
}
export interface RoleUpdateResult {
newlyAddedRoles: string[];
failedRoles: string[];
}
export declare abstract class BaseGcpIamManager {
protected initialized: boolean;
protected readonly identity: GcpAuthenticatedIdentity;
protected userEmail: string | undefined;
constructor(identity: GcpAuthenticatedIdentity);
initialize(): Promise<void>;
protected abstract initializeSpecific(): Promise<void>;
protected abstract formatResourceName(resourceId: string): string;
abstract ensurePermissions(): Promise<void>;
}