import type { KsCloudConfig } from '@knapsack/types';
import type { ConvertTokenDataToFilesArgs } from '@knapsack/design-token-utils';
import type { KsServerPlugin } from './plugins';
import type { Renderer } from '../domains/patterns/renderers/renderer-base';
export type { TemplateRendererMeta } from '@knapsack/types';
export type KnapsackConfig<PathType extends string = string> = {
    /** Output of knapsack build directory */
    dist: PathType;
    /** Knapsack data directory */
    data: PathType;
    /** Hosted by knapsack server. Place compiled Design System css and js as well as images and other assets needed by knapsack */
    public: PathType;
    templateRenderers: Renderer<any, any>[];
    designTokens?: {
        /** path to `knapsack.design-tokens.json` */
        srcFilePath?: PathType;
        /**
         * Use this directory instead of "`config.dist`/tokens"
         * @see {KnapsackConfig['dist']}
         */
        distDir?: PathType;
        targets?: ConvertTokenDataToFilesArgs['targets'];
    };
    plugins?: KsServerPlugin<any>[];
    version: string;
    cloud?: KsCloudConfig<PathType>;
    devServer?: {
        https?: boolean;
        /**
         * If present (and if `devServer.https` is `true`), this will be used instead of auto-generating an SSL cert. If absent, an SSL cert will be auto-generated.
         */
        ssl?: {
            /**
             * This is a file path and NOT the contents of the file
             */
            cert: PathType;
            /**
             * This is a file path and NOT the contents of the file
             */
            key: PathType;
        };
        port?: number;
    };
};
//# sourceMappingURL=knapsack-config.d.ts.map