@burdenoff/website-sdk 2026.709.2 → 2026.710.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,157 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ interface StoreProduct {
4
+ id: string;
5
+ name: string;
6
+ slug: string;
7
+ type: string;
8
+ subType?: string | null;
9
+ nature?: string | null;
10
+ status: string;
11
+ pricingModel: string;
12
+ price?: number | null;
13
+ currency?: string | null;
14
+ description?: string | null;
15
+ longDescription?: string | null;
16
+ icon?: string | null;
17
+ bannerUrl?: string | null;
18
+ screenshots?: string[] | null;
19
+ videoUrls?: string[] | null;
20
+ category?: string | null;
21
+ tags?: string[] | null;
22
+ featured?: boolean | null;
23
+ downloads?: number | null;
24
+ viewCount?: number | null;
25
+ rating?: number | null;
26
+ reviewCount?: number | null;
27
+ publisherId?: string | null;
28
+ authorName?: string | null;
29
+ license?: string | null;
30
+ compatibleProducts?: string[] | null;
31
+ minPlatformVersion?: string | null;
32
+ }
33
+ interface StorePublisher {
34
+ id: string;
35
+ name: string;
36
+ email?: string | null;
37
+ websiteUrl?: string | null;
38
+ logoUrl?: string | null;
39
+ bio?: string | null;
40
+ isVerified?: boolean | null;
41
+ tier?: string | null;
42
+ }
43
+ interface StoreReview {
44
+ id: string;
45
+ rating: number;
46
+ title?: string | null;
47
+ comment?: string | null;
48
+ status?: string | null;
49
+ verifiedPurchase?: boolean | null;
50
+ helpful?: number | null;
51
+ createdAt?: string | null;
52
+ userId?: string | null;
53
+ }
54
+ interface StoreFacet {
55
+ value: string;
56
+ count: number;
57
+ }
58
+ interface StoreFacets {
59
+ types?: StoreFacet[] | null;
60
+ categories?: StoreFacet[] | null;
61
+ pricingModels?: StoreFacet[] | null;
62
+ priceRange?: {
63
+ min: number;
64
+ max: number;
65
+ } | null;
66
+ }
67
+ interface BrowseStoreResult {
68
+ products: StoreProduct[];
69
+ totalCount: number;
70
+ hasMore: boolean;
71
+ nextCursor?: string | null;
72
+ facets?: StoreFacets | null;
73
+ }
74
+ interface GroupedStoreProducts {
75
+ featured: StoreProduct[];
76
+ mostDownloaded: StoreProduct[];
77
+ recentlyAdded: StoreProduct[];
78
+ freeItems: StoreProduct[];
79
+ }
80
+ interface RatingDistribution {
81
+ fiveStars: number;
82
+ fourStars: number;
83
+ threeStars: number;
84
+ twoStars: number;
85
+ oneStar: number;
86
+ }
87
+ interface StoreProductDetails {
88
+ product: StoreProduct;
89
+ publisher?: StorePublisher | null;
90
+ reviews?: StoreReview[] | null;
91
+ reviewsCount?: number | null;
92
+ relatedProducts?: StoreProduct[] | null;
93
+ ratingDistribution?: RatingDistribution | null;
94
+ }
95
+ interface SearchSuggestion {
96
+ term: string;
97
+ type?: string | null;
98
+ count?: number | null;
99
+ }
100
+ interface ProductCategory {
101
+ id: string;
102
+ name: string;
103
+ slug: string;
104
+ description?: string | null;
105
+ icon?: string | null;
106
+ parentId?: string | null;
107
+ }
108
+ interface StorePageProps {
109
+ /** Filter to only products compatible with this product (e.g. "fluidgrids") */
110
+ compatibleWith?: string;
111
+ /** URL for the authenticated app (install / purchase CTA) */
112
+ appLoginUrl: string;
113
+ /** Called instead of <a href> for internal navigation — pass useNavigate() wrapper */
114
+ onNavigate?: (path: string) => void;
115
+ }
116
+
117
+ interface StoreHomePageProps extends StorePageProps {
118
+ productName?: string;
119
+ heroTitle?: string;
120
+ heroSubtitle?: string;
121
+ browsePath?: string;
122
+ seoTitle?: string;
123
+ seoDescription?: string;
124
+ seoKeywords?: string;
125
+ }
126
+ declare function StoreHomePage({ compatibleWith, appLoginUrl, onNavigate, productName, heroTitle, heroSubtitle, browsePath, seoTitle, seoDescription, seoKeywords, }: StoreHomePageProps): react_jsx_runtime.JSX.Element;
127
+
128
+ interface StoreBrowsePageProps extends StorePageProps {
129
+ productName?: string;
130
+ seoTitle?: string;
131
+ seoDescription?: string;
132
+ }
133
+ declare function StoreBrowsePage({ compatibleWith, onNavigate, productName, seoTitle, seoDescription, }: StoreBrowsePageProps): react_jsx_runtime.JSX.Element;
134
+
135
+ interface StoreProductDetailPageProps extends StorePageProps {
136
+ slug?: string;
137
+ id?: string;
138
+ productName?: string;
139
+ }
140
+ declare function StoreProductDetailPage({ slug, id, appLoginUrl, onNavigate, productName, }: StoreProductDetailPageProps): react_jsx_runtime.JSX.Element;
141
+
142
+ declare function formatPrice(price: number | null | undefined, currency: string | null | undefined, pricingModel: string): string;
143
+ declare function formatDownloads(n: number | null | undefined): string;
144
+ declare function StarRating({ rating }: {
145
+ rating: number;
146
+ }): react_jsx_runtime.JSX.Element;
147
+ declare function TypeBadge({ type }: {
148
+ type: string;
149
+ }): react_jsx_runtime.JSX.Element;
150
+ interface ProductCardProps {
151
+ product: StoreProduct;
152
+ onClick?: () => void;
153
+ href?: string;
154
+ }
155
+ declare function ProductCard({ product, onClick, href }: ProductCardProps): react_jsx_runtime.JSX.Element;
156
+
157
+ export { type BrowseStoreResult, type GroupedStoreProducts, ProductCard, type ProductCategory, type RatingDistribution, type SearchSuggestion, StarRating, StoreBrowsePage, type StoreBrowsePageProps, type StoreFacet, type StoreFacets, StoreHomePage, type StoreHomePageProps, type StorePageProps, type StoreProduct, StoreProductDetailPage, type StoreProductDetailPageProps, type StoreProductDetails, type StorePublisher, type StoreReview, TypeBadge, formatDownloads, formatPrice };
@@ -0,0 +1,157 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ interface StoreProduct {
4
+ id: string;
5
+ name: string;
6
+ slug: string;
7
+ type: string;
8
+ subType?: string | null;
9
+ nature?: string | null;
10
+ status: string;
11
+ pricingModel: string;
12
+ price?: number | null;
13
+ currency?: string | null;
14
+ description?: string | null;
15
+ longDescription?: string | null;
16
+ icon?: string | null;
17
+ bannerUrl?: string | null;
18
+ screenshots?: string[] | null;
19
+ videoUrls?: string[] | null;
20
+ category?: string | null;
21
+ tags?: string[] | null;
22
+ featured?: boolean | null;
23
+ downloads?: number | null;
24
+ viewCount?: number | null;
25
+ rating?: number | null;
26
+ reviewCount?: number | null;
27
+ publisherId?: string | null;
28
+ authorName?: string | null;
29
+ license?: string | null;
30
+ compatibleProducts?: string[] | null;
31
+ minPlatformVersion?: string | null;
32
+ }
33
+ interface StorePublisher {
34
+ id: string;
35
+ name: string;
36
+ email?: string | null;
37
+ websiteUrl?: string | null;
38
+ logoUrl?: string | null;
39
+ bio?: string | null;
40
+ isVerified?: boolean | null;
41
+ tier?: string | null;
42
+ }
43
+ interface StoreReview {
44
+ id: string;
45
+ rating: number;
46
+ title?: string | null;
47
+ comment?: string | null;
48
+ status?: string | null;
49
+ verifiedPurchase?: boolean | null;
50
+ helpful?: number | null;
51
+ createdAt?: string | null;
52
+ userId?: string | null;
53
+ }
54
+ interface StoreFacet {
55
+ value: string;
56
+ count: number;
57
+ }
58
+ interface StoreFacets {
59
+ types?: StoreFacet[] | null;
60
+ categories?: StoreFacet[] | null;
61
+ pricingModels?: StoreFacet[] | null;
62
+ priceRange?: {
63
+ min: number;
64
+ max: number;
65
+ } | null;
66
+ }
67
+ interface BrowseStoreResult {
68
+ products: StoreProduct[];
69
+ totalCount: number;
70
+ hasMore: boolean;
71
+ nextCursor?: string | null;
72
+ facets?: StoreFacets | null;
73
+ }
74
+ interface GroupedStoreProducts {
75
+ featured: StoreProduct[];
76
+ mostDownloaded: StoreProduct[];
77
+ recentlyAdded: StoreProduct[];
78
+ freeItems: StoreProduct[];
79
+ }
80
+ interface RatingDistribution {
81
+ fiveStars: number;
82
+ fourStars: number;
83
+ threeStars: number;
84
+ twoStars: number;
85
+ oneStar: number;
86
+ }
87
+ interface StoreProductDetails {
88
+ product: StoreProduct;
89
+ publisher?: StorePublisher | null;
90
+ reviews?: StoreReview[] | null;
91
+ reviewsCount?: number | null;
92
+ relatedProducts?: StoreProduct[] | null;
93
+ ratingDistribution?: RatingDistribution | null;
94
+ }
95
+ interface SearchSuggestion {
96
+ term: string;
97
+ type?: string | null;
98
+ count?: number | null;
99
+ }
100
+ interface ProductCategory {
101
+ id: string;
102
+ name: string;
103
+ slug: string;
104
+ description?: string | null;
105
+ icon?: string | null;
106
+ parentId?: string | null;
107
+ }
108
+ interface StorePageProps {
109
+ /** Filter to only products compatible with this product (e.g. "fluidgrids") */
110
+ compatibleWith?: string;
111
+ /** URL for the authenticated app (install / purchase CTA) */
112
+ appLoginUrl: string;
113
+ /** Called instead of <a href> for internal navigation — pass useNavigate() wrapper */
114
+ onNavigate?: (path: string) => void;
115
+ }
116
+
117
+ interface StoreHomePageProps extends StorePageProps {
118
+ productName?: string;
119
+ heroTitle?: string;
120
+ heroSubtitle?: string;
121
+ browsePath?: string;
122
+ seoTitle?: string;
123
+ seoDescription?: string;
124
+ seoKeywords?: string;
125
+ }
126
+ declare function StoreHomePage({ compatibleWith, appLoginUrl, onNavigate, productName, heroTitle, heroSubtitle, browsePath, seoTitle, seoDescription, seoKeywords, }: StoreHomePageProps): react_jsx_runtime.JSX.Element;
127
+
128
+ interface StoreBrowsePageProps extends StorePageProps {
129
+ productName?: string;
130
+ seoTitle?: string;
131
+ seoDescription?: string;
132
+ }
133
+ declare function StoreBrowsePage({ compatibleWith, onNavigate, productName, seoTitle, seoDescription, }: StoreBrowsePageProps): react_jsx_runtime.JSX.Element;
134
+
135
+ interface StoreProductDetailPageProps extends StorePageProps {
136
+ slug?: string;
137
+ id?: string;
138
+ productName?: string;
139
+ }
140
+ declare function StoreProductDetailPage({ slug, id, appLoginUrl, onNavigate, productName, }: StoreProductDetailPageProps): react_jsx_runtime.JSX.Element;
141
+
142
+ declare function formatPrice(price: number | null | undefined, currency: string | null | undefined, pricingModel: string): string;
143
+ declare function formatDownloads(n: number | null | undefined): string;
144
+ declare function StarRating({ rating }: {
145
+ rating: number;
146
+ }): react_jsx_runtime.JSX.Element;
147
+ declare function TypeBadge({ type }: {
148
+ type: string;
149
+ }): react_jsx_runtime.JSX.Element;
150
+ interface ProductCardProps {
151
+ product: StoreProduct;
152
+ onClick?: () => void;
153
+ href?: string;
154
+ }
155
+ declare function ProductCard({ product, onClick, href }: ProductCardProps): react_jsx_runtime.JSX.Element;
156
+
157
+ export { type BrowseStoreResult, type GroupedStoreProducts, ProductCard, type ProductCategory, type RatingDistribution, type SearchSuggestion, StarRating, StoreBrowsePage, type StoreBrowsePageProps, type StoreFacet, type StoreFacets, StoreHomePage, type StoreHomePageProps, type StorePageProps, type StoreProduct, StoreProductDetailPage, type StoreProductDetailPageProps, type StoreProductDetails, type StorePublisher, type StoreReview, TypeBadge, formatDownloads, formatPrice };