@nu-art/google-services
Version:
google-services
56 lines (55 loc) • 2.3 kB
TypeScript
/**
* Created by tacb0ss on 07/05/2018.
*/
import { Module } from "@nu-art/ts-common";
import { cloudresourcemanager_v1, cloudresourcemanager_v2, serviceusage_v1 } from "googleapis";
import Schema$Folder = cloudresourcemanager_v2.Schema$Folder;
import Schema$Project = cloudresourcemanager_v1.Schema$Project;
import { ServiceKey } from "./consts";
type CreateFolder = {
parentId: string;
folderName: string;
};
type QueryFolder = {
parentId: string;
folderName: string;
};
type GoogleCloudManagerConfig = {
authKey: string;
scopes: string[];
};
export declare class ModuleBE_GcpManager_Class extends Module<GoogleCloudManagerConfig> {
private cloudServicesManagerAPI;
private cloudResourcesManagerAPI;
private cloudResourcesManagerAPIv1;
constructor();
protected init(): void;
getOrCreateFolder(parentFolderId: string, folderName: string): Promise<string>;
createFolder(_request: CreateFolder): Promise<{
[key: string]: any;
} | null | undefined>;
queryFolders(_query: QueryFolder): Promise<cloudresourcemanager_v2.Schema$Folder[]>;
getFolderId(folder: Schema$Folder): string;
private _waitForFolderOperation;
listProjects(filter?: ((project: Schema$Project) => boolean)): Promise<cloudresourcemanager_v1.Schema$Project[]>;
getOrCreateProjects(parentId: string, ...projects: {
projectId: string;
name: string;
}[]): Promise<(cloudresourcemanager_v1.Schema$Project | {
[key: string]: any;
} | undefined)[]>;
createProject(parentId: string, projectId: string, name?: string): Promise<{
[key: string]: any;
} | null | undefined>;
_waitForProjectOperation(name: string): Promise<{
[key: string]: any;
} | null | undefined>;
getService(serviceKey: ServiceKey, projectId: string): Promise<serviceusage_v1.Schema$GoogleApiServiceusageV1Service>;
enableService(serviceKey: ServiceKey, enable: boolean, ...projectIds: string[]): Promise<(void | serviceusage_v1.Schema$GoogleApiServiceusageV1Service)[]>;
private _enableService;
private _waitForServiceOperation;
isEnabled(serviceKey: ServiceKey, projectId: string): Promise<boolean>;
private _isEnabled;
}
export declare const ModuleBE_GcpManager: ModuleBE_GcpManager_Class;
export {};