@limlabs/limo
Version:
Infrastructure as Code generator
24 lines (23 loc) • 969 B
TypeScript
import z, { ZodObject } from "zod";
import { PromptObject } from "prompts";
import { ResourceGroupType } from "./resourceGroups";
export declare class BaseTemplate {
name: string;
directory: string;
resourceGroupType?: ResourceGroupType;
data: any;
inputSchema: ZodObject<any> | undefined;
constructor(name: string, directory: string, resourceGroupType?: ResourceGroupType, dirname?: string);
scripts: Record<string, string>;
static resourceGroupsSupported: ResourceGroupType[];
collectInputs(inputs: any): Promise<void>;
dependsOn(): Promise<{
files: string[];
packages: string[];
}>;
generate(): Promise<void>;
destroy(): Promise<void>;
envPull(options: any): Promise<void>;
}
export declare function parseInputSchema(template: string): z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}> | undefined;
export declare function getInputPrompts(schema: ZodObject<any>): Promise<PromptObject<string>[]>;