import type { Context } from "../context.js"; import { Resource } from "../resource.js"; /** * Framework types supported by the Tailwind resource */ export type TailwindFramework = "vite" | "astro" | "next" | "standalone"; /** * Properties for Tailwind configuration */ export interface TailwindConfigProps { /** * The working directory where Tailwind should be installed */ cwd: string; /** * The framework being used (determines which dependencies to install) * @default "standalone" */ framework?: TailwindFramework; /** * The path to the CSS file where Tailwind directives should be added * If not provided, a new file will be created at src/styles/base.css */ cssPath?: string; /** * Custom additional packages to install with Tailwind */ additionalPackages?: string[]; } /** * Tailwind configuration resource */ export interface TailwindConfig extends TailwindConfigProps, Resource<"config::TailwindConfig"> { /** * The working directory where Tailwind is installed */ cwd: string; } /** * Installs and configures Tailwind CSS for a project * * @example * // Install Tailwind for a Vite project * const tailwind = await TailwindConfig("vite-tailwind", { * cwd: "my-vite-app", * framework: "vite" * }); * * @example * // Install Tailwind for an Astro project * const tailwind = await TailwindConfig("astro-tailwind", { * cwd: "my-astro-app", * framework: "astro" * }); * * @example * // Install Tailwind as standalone with a custom CSS path * const tailwind = await TailwindConfig("custom-tailwind", { * cwd: "my-project", * cssPath: "src/css/main.css", * additionalPackages: ["@tailwindcss/typography", "@tailwindcss/forms"] * }); */ export declare const TailwindConfig: (((this: any, id: string, props?: {}) => never) & (new (_: never) => never)) | ((this: Context, id: string, props: TailwindConfigProps) => Promise); //# sourceMappingURL=tailwind.d.ts.map