strapi-plugin-magic-mark 1.1.0

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.
Files changed (68) hide show
  1. package/COPYRIGHT_NOTICE.txt +20 -0
  2. package/LICENSE +28 -0
  3. package/README.md +372 -0
  4. package/dist/_chunks/App-7ZH1Reka.mjs +1390 -0
  5. package/dist/_chunks/App-CMSut1pt.js +1392 -0
  6. package/dist/_chunks/de-Bag-366k.mjs +49 -0
  7. package/dist/_chunks/de-Dic_hhjg.js +49 -0
  8. package/dist/_chunks/en-C5BvHqNo.js +54 -0
  9. package/dist/_chunks/en-zokEerzt.mjs +54 -0
  10. package/dist/_chunks/es-BlSQpU1z.js +54 -0
  11. package/dist/_chunks/es-Br1ucP3h.mjs +54 -0
  12. package/dist/_chunks/fr-BHciYPYG.js +54 -0
  13. package/dist/_chunks/fr-Dzo3kt_q.mjs +54 -0
  14. package/dist/_chunks/index-B-Cc7QNW.mjs +322 -0
  15. package/dist/_chunks/index-B11QBtag.js +324 -0
  16. package/dist/_chunks/index-DYHEyGJr.mjs +2020 -0
  17. package/dist/_chunks/index-DkkmdRgb.js +2024 -0
  18. package/dist/_chunks/pt-DQoGyzyD.mjs +54 -0
  19. package/dist/_chunks/pt-Dawo5aUA.js +54 -0
  20. package/dist/admin/index.js +3 -0
  21. package/dist/admin/index.mjs +4 -0
  22. package/dist/admin/src/components/AdvancedFilterButton.d.ts +3 -0
  23. package/dist/admin/src/components/AdvancedFilterModal.d.ts +21 -0
  24. package/dist/admin/src/components/CreateEditModal.d.ts +11 -0
  25. package/dist/admin/src/components/CreateViewModal.d.ts +9 -0
  26. package/dist/admin/src/components/CustomSelect.d.ts +13 -0
  27. package/dist/admin/src/components/FilterPreview.d.ts +6 -0
  28. package/dist/admin/src/components/HomePage.d.ts +0 -0
  29. package/dist/admin/src/components/Initializer.d.ts +6 -0
  30. package/dist/admin/src/components/LicenseGuard.d.ts +6 -0
  31. package/dist/admin/src/components/PluginIcon.d.ts +3 -0
  32. package/dist/admin/src/components/QueryBuilder.d.ts +23 -0
  33. package/dist/admin/src/components/SimpleAdvancedFilterModal.d.ts +15 -0
  34. package/dist/admin/src/components/ViewsListPopover.d.ts +2 -0
  35. package/dist/admin/src/components/ViewsWidget.d.ts +8 -0
  36. package/dist/admin/src/index.d.ts +15 -0
  37. package/dist/admin/src/pages/App.d.ts +3 -0
  38. package/dist/admin/src/pages/HomePage.d.ts +3 -0
  39. package/dist/admin/src/pages/HomePageModern.d.ts +3 -0
  40. package/dist/admin/src/pages/License/index.d.ts +3 -0
  41. package/dist/admin/src/permissions.d.ts +15 -0
  42. package/dist/admin/src/pluginId.d.ts +2 -0
  43. package/dist/admin/src/utils/queryGenerator.d.ts +28 -0
  44. package/dist/admin/src/utils/queryParser.d.ts +25 -0
  45. package/dist/admin/src/utils/queryToStructure.d.ts +20 -0
  46. package/dist/server/index.js +1309 -0
  47. package/dist/server/index.mjs +1307 -0
  48. package/dist/server/src/bootstrap.d.ts +5 -0
  49. package/dist/server/src/config/index.d.ts +5 -0
  50. package/dist/server/src/content-types/index.d.ts +82 -0
  51. package/dist/server/src/controllers/controller.d.ts +11 -0
  52. package/dist/server/src/controllers/index.d.ts +20 -0
  53. package/dist/server/src/controllers/license.d.ts +27 -0
  54. package/dist/server/src/destroy.d.ts +5 -0
  55. package/dist/server/src/index.d.ts +195 -0
  56. package/dist/server/src/middlewares/index.d.ts +4 -0
  57. package/dist/server/src/middlewares/license-check.d.ts +6 -0
  58. package/dist/server/src/policies/index.d.ts +4 -0
  59. package/dist/server/src/policies/license-check.d.ts +6 -0
  60. package/dist/server/src/register.d.ts +5 -0
  61. package/dist/server/src/routes/admin.d.ts +12 -0
  62. package/dist/server/src/routes/content-api.d.ts +5 -0
  63. package/dist/server/src/routes/index.d.ts +18 -0
  64. package/dist/server/src/services/index.d.ts +57 -0
  65. package/dist/server/src/services/license-guard.d.ts +103 -0
  66. package/dist/server/src/services/service.d.ts +33 -0
  67. package/package.json +108 -0
  68. package/strapi-server.js +4 -0
@@ -0,0 +1,5 @@
1
+ import type { Core } from '@strapi/strapi';
2
+ declare const _default: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => void;
5
+ export default _default;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ default: {};
3
+ validator: () => void;
4
+ };
5
+ export default _default;
@@ -0,0 +1,82 @@
1
+ declare const _default: {
2
+ bookmark: {
3
+ schema: {
4
+ kind: string;
5
+ collectionName: string;
6
+ info: {
7
+ singularName: string;
8
+ pluralName: string;
9
+ displayName: string;
10
+ description: string;
11
+ };
12
+ options: {
13
+ draftAndPublish: boolean;
14
+ comment: string;
15
+ };
16
+ pluginOptions: {
17
+ 'content-manager': {
18
+ visible: boolean;
19
+ };
20
+ 'content-type-builder': {
21
+ visible: boolean;
22
+ };
23
+ };
24
+ attributes: {
25
+ name: {
26
+ type: string;
27
+ required: boolean;
28
+ maxLength: number;
29
+ configurable: boolean;
30
+ };
31
+ path: {
32
+ type: string;
33
+ required: boolean;
34
+ configurable: boolean;
35
+ description: string;
36
+ };
37
+ query: {
38
+ type: string;
39
+ configurable: boolean;
40
+ description: string;
41
+ };
42
+ emoji: {
43
+ type: string;
44
+ default: string;
45
+ configurable: boolean;
46
+ maxLength: number;
47
+ };
48
+ isPinned: {
49
+ type: string;
50
+ default: boolean;
51
+ configurable: boolean;
52
+ };
53
+ order: {
54
+ type: string;
55
+ default: number;
56
+ configurable: boolean;
57
+ };
58
+ description: {
59
+ type: string;
60
+ configurable: boolean;
61
+ };
62
+ sharedWithRoles: {
63
+ type: string;
64
+ configurable: boolean;
65
+ description: string;
66
+ };
67
+ sharedWithUsers: {
68
+ type: string;
69
+ configurable: boolean;
70
+ description: string;
71
+ };
72
+ isPublic: {
73
+ type: string;
74
+ default: boolean;
75
+ configurable: boolean;
76
+ description: string;
77
+ };
78
+ };
79
+ };
80
+ };
81
+ };
82
+ export default _default;
@@ -0,0 +1,11 @@
1
+ declare const _default: ({ strapi }: any) => {
2
+ getAll(ctx: any): Promise<any>;
3
+ create(ctx: any): Promise<any>;
4
+ update(ctx: any): Promise<any>;
5
+ delete(ctx: any): Promise<any>;
6
+ pin(ctx: any): Promise<any>;
7
+ reorder(ctx: any): Promise<any>;
8
+ getRoles(ctx: any): Promise<any>;
9
+ getUsers(ctx: any): Promise<any>;
10
+ };
11
+ export default _default;
@@ -0,0 +1,20 @@
1
+ declare const _default: {
2
+ bookmarks: ({ strapi }: any) => {
3
+ getAll(ctx: any): Promise<any>;
4
+ create(ctx: any): Promise<any>;
5
+ update(ctx: any): Promise<any>;
6
+ delete(ctx: any): Promise<any>;
7
+ pin(ctx: any): Promise<any>;
8
+ reorder(ctx: any): Promise<any>;
9
+ getRoles(ctx: any): Promise<any>;
10
+ getUsers(ctx: any): Promise<any>;
11
+ };
12
+ license: ({ strapi }: any) => {
13
+ autoCreate(ctx: any): Promise<any>;
14
+ getStatus(ctx: any): Promise<any>;
15
+ createAndActivate(ctx: any): Promise<any>;
16
+ ping(ctx: any): Promise<any>;
17
+ storeKey(ctx: any): Promise<any>;
18
+ };
19
+ };
20
+ export default _default;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * License Controller for MagicMark Plugin
3
+ * Manages licenses directly from the Admin Panel
4
+ */
5
+ declare const _default: ({ strapi }: any) => {
6
+ /**
7
+ * Auto-create license with logged-in admin user data
8
+ */
9
+ autoCreate(ctx: any): Promise<any>;
10
+ /**
11
+ * Get current license status
12
+ */
13
+ getStatus(ctx: any): Promise<any>;
14
+ /**
15
+ * Create and activate a new license
16
+ */
17
+ createAndActivate(ctx: any): Promise<any>;
18
+ /**
19
+ * Manually ping the current license
20
+ */
21
+ ping(ctx: any): Promise<any>;
22
+ /**
23
+ * Store and validate an existing license key
24
+ */
25
+ storeKey(ctx: any): Promise<any>;
26
+ };
27
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import type { Core } from '@strapi/strapi';
2
+ declare const _default: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => void;
5
+ export default _default;
@@ -0,0 +1,195 @@
1
+ /// <reference types="node" />
2
+ declare const _default: {
3
+ register: ({ strapi }: {
4
+ strapi: import("@strapi/types/dist/core").Strapi;
5
+ }) => Promise<void>;
6
+ bootstrap: ({ strapi }: {
7
+ strapi: import("@strapi/types/dist/core").Strapi;
8
+ }) => void;
9
+ destroy: ({ strapi }: {
10
+ strapi: import("@strapi/types/dist/core").Strapi;
11
+ }) => void;
12
+ config: {
13
+ default: {};
14
+ validator: () => void;
15
+ };
16
+ controllers: {
17
+ bookmarks: ({ strapi }: any) => {
18
+ getAll(ctx: any): Promise<any>;
19
+ create(ctx: any): Promise<any>;
20
+ update(ctx: any): Promise<any>;
21
+ delete(ctx: any): Promise<any>;
22
+ pin(ctx: any): Promise<any>;
23
+ reorder(ctx: any): Promise<any>;
24
+ getRoles(ctx: any): Promise<any>;
25
+ getUsers(ctx: any): Promise<any>;
26
+ };
27
+ license: ({ strapi }: any) => {
28
+ autoCreate(ctx: any): Promise<any>;
29
+ getStatus(ctx: any): Promise<any>;
30
+ createAndActivate(ctx: any): Promise<any>;
31
+ ping(ctx: any): Promise<any>;
32
+ storeKey(ctx: any): Promise<any>;
33
+ };
34
+ };
35
+ routes: {
36
+ admin: {
37
+ type: string;
38
+ routes: {
39
+ method: string;
40
+ path: string;
41
+ handler: string;
42
+ config: {
43
+ policies: any[];
44
+ };
45
+ }[];
46
+ };
47
+ 'content-api': {
48
+ type: string;
49
+ routes: any[];
50
+ };
51
+ };
52
+ services: {
53
+ bookmarks: ({ strapi }: {
54
+ strapi: import("@strapi/types/dist/core").Strapi;
55
+ }) => {
56
+ findAll(userId: number): Promise<any>;
57
+ create(name: string, path: string, query: string, emoji: string, description: string, userId: number, sharedWithRoles?: number[], sharedWithUsers?: number[], isPublic?: boolean): Promise<{
58
+ id: import("@strapi/types/dist/data").ID;
59
+ } & {
60
+ [key: string]: any;
61
+ }>;
62
+ update(id: string | number, data: any, userId: number): Promise<{
63
+ id: import("@strapi/types/dist/data").ID;
64
+ } & {
65
+ [key: string]: any;
66
+ }>;
67
+ delete(id: string | number): Promise<{
68
+ id: import("@strapi/types/dist/data").ID;
69
+ } & {
70
+ [key: string]: any;
71
+ }>;
72
+ pin(id: string | number, isPinned: boolean, userId: number): Promise<{
73
+ id: import("@strapi/types/dist/data").ID;
74
+ } & {
75
+ [key: string]: any;
76
+ }>;
77
+ reorder(bookmarkIds: (string | number)[], userId: number): Promise<({
78
+ id: import("@strapi/types/dist/data").ID;
79
+ } & {
80
+ [key: string]: any;
81
+ })[]>;
82
+ validateUrl(url: string): boolean;
83
+ };
84
+ 'license-guard': ({ strapi }: {
85
+ strapi: import("@strapi/types/dist/core").Strapi;
86
+ }) => {
87
+ getLicenseServerUrl(): string;
88
+ generateDeviceId(): string;
89
+ getDeviceName(): string;
90
+ getIpAddress(): string;
91
+ getUserAgent(): string;
92
+ createLicense({ email, firstName, lastName }: {
93
+ email: string;
94
+ firstName: string;
95
+ lastName: string;
96
+ }): Promise<import("./services/license-guard").LicenseData>;
97
+ verifyLicense(licenseKey: string, allowGracePeriod?: boolean): Promise<import("./services/license-guard").VerificationResult>;
98
+ pingLicense(licenseKey: string): Promise<any>;
99
+ getLicenseByKey(licenseKey: string): Promise<import("./services/license-guard").LicenseData>;
100
+ getOnlineStats(): Promise<any>;
101
+ startPinging(licenseKey: string, intervalMinutes?: number): NodeJS.Timeout;
102
+ initialize(): Promise<import("./services/license-guard").LicenseStatus>;
103
+ storeLicenseKey(licenseKey: string): Promise<boolean>;
104
+ cleanup(): void;
105
+ };
106
+ };
107
+ contentTypes: {
108
+ bookmark: {
109
+ schema: {
110
+ kind: string;
111
+ collectionName: string;
112
+ info: {
113
+ singularName: string;
114
+ pluralName: string;
115
+ displayName: string;
116
+ description: string;
117
+ };
118
+ options: {
119
+ draftAndPublish: boolean;
120
+ comment: string;
121
+ };
122
+ pluginOptions: {
123
+ 'content-manager': {
124
+ visible: boolean;
125
+ };
126
+ 'content-type-builder': {
127
+ visible: boolean;
128
+ };
129
+ };
130
+ attributes: {
131
+ name: {
132
+ type: string;
133
+ required: boolean;
134
+ maxLength: number;
135
+ configurable: boolean;
136
+ };
137
+ path: {
138
+ type: string;
139
+ required: boolean;
140
+ configurable: boolean;
141
+ description: string;
142
+ };
143
+ query: {
144
+ type: string;
145
+ configurable: boolean;
146
+ description: string;
147
+ };
148
+ emoji: {
149
+ type: string;
150
+ default: string;
151
+ configurable: boolean;
152
+ maxLength: number;
153
+ };
154
+ isPinned: {
155
+ type: string;
156
+ default: boolean;
157
+ configurable: boolean;
158
+ };
159
+ order: {
160
+ type: string;
161
+ default: number;
162
+ configurable: boolean;
163
+ };
164
+ description: {
165
+ type: string;
166
+ configurable: boolean;
167
+ };
168
+ sharedWithRoles: {
169
+ type: string;
170
+ configurable: boolean;
171
+ description: string;
172
+ };
173
+ sharedWithUsers: {
174
+ type: string;
175
+ configurable: boolean;
176
+ description: string;
177
+ };
178
+ isPublic: {
179
+ type: string;
180
+ default: boolean;
181
+ configurable: boolean;
182
+ description: string;
183
+ };
184
+ };
185
+ };
186
+ };
187
+ };
188
+ policies: {
189
+ 'license-check': (policyContext: any, config: any, { strapi }: any) => Promise<any>;
190
+ };
191
+ middlewares: {
192
+ 'license-check': (config: any, { strapi }: any) => (ctx: any, next: any) => Promise<any>;
193
+ };
194
+ };
195
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ 'license-check': (config: any, { strapi }: any) => (ctx: any, next: any) => Promise<any>;
3
+ };
4
+ export default _default;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * License Check Middleware
3
+ * Validates license before allowing plugin operations
4
+ */
5
+ declare const _default: (config: any, { strapi }: any) => (ctx: any, next: any) => Promise<any>;
6
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ 'license-check': (policyContext: any, config: any, { strapi }: any) => Promise<any>;
3
+ };
4
+ export default _default;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * License Check Policy
3
+ * Verifies that a valid license exists before allowing API access
4
+ */
5
+ declare const _default: (policyContext: any, config: any, { strapi }: any) => Promise<any>;
6
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import type { Core } from '@strapi/strapi';
2
+ declare const _default: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => Promise<void>;
5
+ export default _default;
@@ -0,0 +1,12 @@
1
+ declare const _default: {
2
+ type: string;
3
+ routes: {
4
+ method: string;
5
+ path: string;
6
+ handler: string;
7
+ config: {
8
+ policies: any[];
9
+ };
10
+ }[];
11
+ };
12
+ export default _default;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ type: string;
3
+ routes: any[];
4
+ };
5
+ export default _default;
@@ -0,0 +1,18 @@
1
+ declare const _default: {
2
+ admin: {
3
+ type: string;
4
+ routes: {
5
+ method: string;
6
+ path: string;
7
+ handler: string;
8
+ config: {
9
+ policies: any[];
10
+ };
11
+ }[];
12
+ };
13
+ 'content-api': {
14
+ type: string;
15
+ routes: any[];
16
+ };
17
+ };
18
+ export default _default;
@@ -0,0 +1,57 @@
1
+ /// <reference types="node" />
2
+ declare const _default: {
3
+ bookmarks: ({ strapi }: {
4
+ strapi: import("@strapi/types/dist/core").Strapi;
5
+ }) => {
6
+ findAll(userId: number): Promise<any>;
7
+ create(name: string, path: string, query: string, emoji: string, description: string, userId: number, sharedWithRoles?: number[], sharedWithUsers?: number[], isPublic?: boolean): Promise<{
8
+ id: import("@strapi/types/dist/data").ID;
9
+ } & {
10
+ [key: string]: any;
11
+ }>;
12
+ update(id: string | number, data: any, userId: number): Promise<{
13
+ id: import("@strapi/types/dist/data").ID;
14
+ } & {
15
+ [key: string]: any;
16
+ }>;
17
+ delete(id: string | number): Promise<{
18
+ id: import("@strapi/types/dist/data").ID;
19
+ } & {
20
+ [key: string]: any;
21
+ }>;
22
+ pin(id: string | number, isPinned: boolean, userId: number): Promise<{
23
+ id: import("@strapi/types/dist/data").ID;
24
+ } & {
25
+ [key: string]: any;
26
+ }>;
27
+ reorder(bookmarkIds: (string | number)[], userId: number): Promise<({
28
+ id: import("@strapi/types/dist/data").ID;
29
+ } & {
30
+ [key: string]: any;
31
+ })[]>;
32
+ validateUrl(url: string): boolean;
33
+ };
34
+ 'license-guard': ({ strapi }: {
35
+ strapi: import("@strapi/types/dist/core").Strapi;
36
+ }) => {
37
+ getLicenseServerUrl(): string;
38
+ generateDeviceId(): string;
39
+ getDeviceName(): string;
40
+ getIpAddress(): string;
41
+ getUserAgent(): string;
42
+ createLicense({ email, firstName, lastName }: {
43
+ email: string;
44
+ firstName: string;
45
+ lastName: string;
46
+ }): Promise<import("./license-guard").LicenseData>;
47
+ verifyLicense(licenseKey: string, allowGracePeriod?: boolean): Promise<import("./license-guard").VerificationResult>;
48
+ pingLicense(licenseKey: string): Promise<any>;
49
+ getLicenseByKey(licenseKey: string): Promise<import("./license-guard").LicenseData>;
50
+ getOnlineStats(): Promise<any>;
51
+ startPinging(licenseKey: string, intervalMinutes?: number): NodeJS.Timeout;
52
+ initialize(): Promise<import("./license-guard").LicenseStatus>;
53
+ storeLicenseKey(licenseKey: string): Promise<boolean>;
54
+ cleanup(): void;
55
+ };
56
+ };
57
+ export default _default;
@@ -0,0 +1,103 @@
1
+ /**
2
+ * License Guard Service
3
+ * Handles license creation, verification, and ping tracking
4
+ */
5
+ import type { Core } from '@strapi/strapi';
6
+ export interface LicenseData {
7
+ licenseKey: string;
8
+ email: string;
9
+ firstName: string;
10
+ lastName: string;
11
+ isActive: boolean;
12
+ isExpired: boolean;
13
+ isOnline?: boolean;
14
+ expiresAt?: string;
15
+ lastPingAt?: string;
16
+ deviceName?: string;
17
+ deviceId?: string;
18
+ ipAddress?: string;
19
+ featurePremium?: boolean;
20
+ featureAdvanced?: boolean;
21
+ featureEnterprise?: boolean;
22
+ featureCustom?: boolean;
23
+ maxDevices?: number;
24
+ currentDevices?: number;
25
+ }
26
+ export interface VerificationResult {
27
+ valid: boolean;
28
+ data: LicenseData | null;
29
+ gracePeriod?: boolean;
30
+ }
31
+ export interface LicenseStatus {
32
+ valid: boolean;
33
+ demo?: boolean;
34
+ error?: string;
35
+ data?: LicenseData | null;
36
+ }
37
+ declare const licenseGuardService: ({ strapi }: {
38
+ strapi: Core.Strapi;
39
+ }) => {
40
+ /**
41
+ * Get license server URL (hardcoded and immutable for security)
42
+ * @returns The fixed license server URL - cannot be overridden
43
+ */
44
+ getLicenseServerUrl(): string;
45
+ /**
46
+ * Generate a unique device ID based on machine identifiers
47
+ */
48
+ generateDeviceId(): string;
49
+ /**
50
+ * Get device name
51
+ */
52
+ getDeviceName(): string;
53
+ /**
54
+ * Get server IP address
55
+ */
56
+ getIpAddress(): string;
57
+ /**
58
+ * Get user agent (server context)
59
+ */
60
+ getUserAgent(): string;
61
+ /**
62
+ * Create a license
63
+ */
64
+ createLicense({ email, firstName, lastName }: {
65
+ email: string;
66
+ firstName: string;
67
+ lastName: string;
68
+ }): Promise<LicenseData | null>;
69
+ /**
70
+ * Verify a license (with grace period support)
71
+ */
72
+ verifyLicense(licenseKey: string, allowGracePeriod?: boolean): Promise<VerificationResult>;
73
+ /**
74
+ * Ping a license (lightweight check)
75
+ */
76
+ pingLicense(licenseKey: string): Promise<any>;
77
+ /**
78
+ * Get license by key
79
+ */
80
+ getLicenseByKey(licenseKey: string): Promise<LicenseData | null>;
81
+ /**
82
+ * Get online statistics
83
+ */
84
+ getOnlineStats(): Promise<any>;
85
+ /**
86
+ * Start periodic pinging for a license
87
+ */
88
+ startPinging(licenseKey: string, intervalMinutes?: number): NodeJS.Timeout;
89
+ /**
90
+ * Initialize license guard
91
+ * Checks for existing license or prompts for creation
92
+ */
93
+ initialize(): Promise<LicenseStatus>;
94
+ /**
95
+ * Store license key after creation
96
+ */
97
+ storeLicenseKey(licenseKey: string): Promise<boolean>;
98
+ /**
99
+ * Cleanup on plugin destroy
100
+ */
101
+ cleanup(): void;
102
+ };
103
+ export default licenseGuardService;
@@ -0,0 +1,33 @@
1
+ import type { Core } from '@strapi/strapi';
2
+ declare const bookmarkService: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => {
5
+ findAll(userId: number): Promise<any>;
6
+ create(name: string, path: string, query: string, emoji: string, description: string, userId: number, sharedWithRoles?: number[], sharedWithUsers?: number[], isPublic?: boolean): Promise<{
7
+ id: import("@strapi/types/dist/data").ID;
8
+ } & {
9
+ [key: string]: any;
10
+ }>;
11
+ update(id: string | number, data: any, userId: number): Promise<{
12
+ id: import("@strapi/types/dist/data").ID;
13
+ } & {
14
+ [key: string]: any;
15
+ }>;
16
+ delete(id: string | number): Promise<{
17
+ id: import("@strapi/types/dist/data").ID;
18
+ } & {
19
+ [key: string]: any;
20
+ }>;
21
+ pin(id: string | number, isPinned: boolean, userId: number): Promise<{
22
+ id: import("@strapi/types/dist/data").ID;
23
+ } & {
24
+ [key: string]: any;
25
+ }>;
26
+ reorder(bookmarkIds: (string | number)[], userId: number): Promise<({
27
+ id: import("@strapi/types/dist/data").ID;
28
+ } & {
29
+ [key: string]: any;
30
+ })[]>;
31
+ validateUrl(url: string): boolean;
32
+ };
33
+ export default bookmarkService;