UNPKG

@whoof/ui

Version:

UI components and higher-order functions for Whop application layouts

30 lines (29 loc) 1.11 kB
import type { ReactNode } from 'react'; import type { Sdk } from '@whop/api'; import React from 'react'; type WhopExperience = Awaited<ReturnType<Sdk["experiences"]["getExperience"]>>; type ViewProps<UserData extends Record<string, any>, AppData extends Record<string, any>> = React.ComponentType<{ experience: WhopExperience; user: UserData; } & AppData>; export declare function AppBuilder<UserData extends Record<string, any>, AppData extends Record<string, any>>({ children, params, whopSdk, appConfig, appView, getUser, fetchData, }: { children: ReactNode; params: Promise<{ experienceId: string; }>; whopSdk: Sdk; appView: { user: ViewProps<UserData, AppData>; creator: ViewProps<UserData, AppData>; developer: ViewProps<UserData, AppData>; }; appConfig: { appId: string; }; getUser: (experienceId: string) => Promise<UserData | null>; fetchData?: (params: { user: UserData; experience: WhopExperience; }) => Promise<AppData> | null; }): Promise<import("react/jsx-runtime").JSX.Element>; export {};