@dataroadinc/setup-auth
Version:
CLI tool and programmatic API for automated OAuth setup across cloud platforms
43 lines (42 loc) • 1.32 kB
TypeScript
import { protos } from "@google-cloud/resource-manager";
import { GcpAuthenticatedIdentity } from "./creds/identity.js";
export type GcpOrganization = protos.google.cloud.resourcemanager.v3.IOrganization;
type IamBinding = protos.google.iam.v1.IBinding;
interface IamPolicy {
bindings: IamBinding[];
version?: number;
etag?: string;
}
export declare class GcpOrganizationManager {
private initialized;
private client;
private identity;
private organizationId;
private iamManager;
constructor(identity: GcpAuthenticatedIdentity, organizationId: string);
initialize(): Promise<void>;
getOrganization(): Promise<GcpOrganization>;
getIamPolicy(): Promise<IamPolicy>;
getIamRoles(): Promise<{
role: string;
members: string[];
}[]>;
ensurePermissions(): Promise<void>;
}
export declare function gcpSetOauthOrganizationId(options: {
gcpOauthOrganizationId?: string;
}): Promise<void>;
export declare function gcpGetOauthOrganizationId(options: {
gcpOauthOrganizationId?: string;
}): Promise<{
success: boolean;
gcpOauthOrganizationId?: string;
error?: string;
}>;
export declare function gcpCheckOauthOrganizationId(options: {
gcpOauthOrganizationId?: string;
}): Promise<{
success: boolean;
error?: string;
}>;
export {};