UNPKG

@limlabs/limo

Version:

Infrastructure as Code generator

37 lines (36 loc) 1.77 kB
import { ResourceGroupType } from "../resourceGroups"; import { BaseTemplate } from "../templates"; export declare const AllFrameworkTypes: readonly ["nextjs", "tanstack-start", "unknown"]; /** * Represents the type of framework being used. * * - 'nextjs': Indicates that the framework is Next.js. * - 'tanstack-start': Indicates that the framework is TanStack Start. * - 'unknown': Indicates that the framework is unknown. */ export type FrameworkType = (typeof AllFrameworkTypes)[number]; /** * Detects the framework being used in the resource group. * * @returns {Promise<FrameworkType>} The detected framework type. */ export declare function detectFramework(directory?: string): Promise<FrameworkType>; /** * Gets the supported resource group types for a given framework. * * @param {BaseTemplate} framework - The framework to get supported resource group types for. * * @returns {Promise<ResourceGroupType[]>} The supported resource group types for the given framework. */ export declare function getSupportedResourceGroupTypesForFramework(framework: FrameworkType): Promise<("fullstack-aws" | "staticsite-aws")[]>; /** * Imports a framework based on the given framework type. * * @param {FrameworkType} frameworkType - The type of framework to import. * @param {ResourceGroupType} resourceGroupType - The type of resource group to import. * @param {string} resourceGroupName - the name of the resource group to import. * @param {string} directory - The directory to import the framework into. * * @returns {Promise<FrameworkTemplate>} The imported framework. */ export declare function importFramework(frameworkType: FrameworkType, resourceGroupType: ResourceGroupType, resourceGroupName: string, directory?: string): Promise<BaseTemplate>;