1 | import type { ConfigSlotRecipes } from "./generated/recipes.gen";
|
2 | import type { RecipeVariantMap, RecipeVariantProps, SlotRecipeConfig, SystemSlotRecipeFn } from "./recipe.types";
|
3 | export type SlotRecipeKey = keyof ConfigSlotRecipes | (string & {});
|
4 | export type SlotRecipeFn<K extends SlotRecipeKey> = K extends keyof ConfigSlotRecipes ? ConfigSlotRecipes[K] : SystemSlotRecipeFn<string, {}, {}>;
|
5 | export interface UseSlotRecipeOptions<K extends SlotRecipeKey> {
|
6 | key?: K;
|
7 | recipe?: SlotRecipeConfig;
|
8 | }
|
9 | export declare function useSlotRecipe<Options extends {
|
10 | key: SlotRecipeKey;
|
11 | recipe?: SlotRecipeConfig;
|
12 | }>(options: Options): Options["key"] extends keyof ConfigSlotRecipes ? ConfigSlotRecipes[Options["key"]] : SystemSlotRecipeFn<string, {}, {}>;
|
13 | export declare function useSlotRecipe<Options extends {
|
14 | recipe: SlotRecipeConfig;
|
15 | }>(options: Options): Options["recipe"] extends SlotRecipeConfig<infer S, infer T> ? SystemSlotRecipeFn<S, RecipeVariantProps<Options["recipe"]>, RecipeVariantMap<T>> : never;
|