@storyblok/management-api-client 0.2.4 → 1.0.0-alpha.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.
- package/dist/client.cjs +190 -0
- package/dist/client.cjs.map +1 -0
- package/dist/client.d.cts +624 -0
- package/dist/client.d.mts +624 -0
- package/dist/client.mjs +189 -0
- package/dist/client.mjs.map +1 -0
- package/dist/error.cjs.map +1 -1
- package/dist/error.d.cts +12 -2
- package/dist/error.d.mts +12 -2
- package/dist/error.mjs.map +1 -1
- package/dist/generated/asset_folders/types.gen.d.cts +5 -31
- package/dist/generated/asset_folders/types.gen.d.mts +5 -31
- package/dist/generated/assets/types.gen.d.cts +1 -73
- package/dist/generated/assets/types.gen.d.mts +1 -73
- package/dist/generated/component_folders/types.gen.d.cts +29 -45
- package/dist/generated/component_folders/types.gen.d.mts +29 -45
- package/dist/generated/components/types.gen.d.cts +636 -465
- package/dist/generated/components/types.gen.d.mts +636 -465
- package/dist/generated/datasource_entries/types.gen.d.cts +6 -32
- package/dist/generated/datasource_entries/types.gen.d.mts +6 -32
- package/dist/generated/datasources/types.gen.d.cts +18 -39
- package/dist/generated/datasources/types.gen.d.mts +18 -39
- package/dist/generated/internal_tags/types.gen.d.cts +28 -32
- package/dist/generated/internal_tags/types.gen.d.mts +28 -32
- package/dist/generated/presets/types.gen.d.cts +53 -58
- package/dist/generated/presets/types.gen.d.mts +53 -58
- package/dist/generated/spaces/types.gen.d.cts +1 -41
- package/dist/generated/spaces/types.gen.d.mts +1 -41
- package/dist/generated/stories/types.gen.d.cts +206 -198
- package/dist/generated/stories/types.gen.d.mts +206 -198
- package/dist/generated/users/types.gen.d.cts +13 -112
- package/dist/generated/users/types.gen.d.mts +13 -112
- package/dist/index.cjs +3 -178
- package/dist/index.d.cts +8 -425
- package/dist/index.d.mts +8 -425
- package/dist/index.mjs +2 -176
- package/dist/resources/asset-folders.cjs.map +1 -1
- package/dist/resources/asset-folders.mjs.map +1 -1
- package/dist/resources/assets.cjs +11 -2
- package/dist/resources/assets.cjs.map +1 -1
- package/dist/resources/assets.d.cts +3 -2
- package/dist/resources/assets.d.mts +3 -2
- package/dist/resources/assets.mjs +11 -2
- package/dist/resources/assets.mjs.map +1 -1
- package/dist/resources/component-folders.cjs.map +1 -1
- package/dist/resources/component-folders.mjs.map +1 -1
- package/dist/resources/components.cjs.map +1 -1
- package/dist/resources/components.mjs.map +1 -1
- package/dist/resources/datasource-entries.cjs.map +1 -1
- package/dist/resources/datasource-entries.mjs.map +1 -1
- package/dist/resources/datasources.cjs.map +1 -1
- package/dist/resources/datasources.mjs.map +1 -1
- package/dist/resources/internal-tags.cjs.map +1 -1
- package/dist/resources/internal-tags.mjs.map +1 -1
- package/dist/resources/presets.cjs.map +1 -1
- package/dist/resources/presets.mjs.map +1 -1
- package/dist/resources/spaces.cjs.map +1 -1
- package/dist/resources/spaces.mjs.map +1 -1
- package/dist/resources/stories.cjs.map +1 -1
- package/dist/resources/stories.d.cts +105 -0
- package/dist/resources/stories.d.mts +105 -0
- package/dist/resources/stories.mjs.map +1 -1
- package/dist/resources/users.cjs.map +1 -1
- package/dist/resources/users.mjs.map +1 -1
- package/package.json +13 -10
- package/test/GUIDE.md +59 -0
- package/test/setup.e2e.ts +11 -0
- package/test/specs/mapi-round-trip.spec.e2e.ts +520 -0
- package/vitest.config.e2e.ts +26 -0
- package/vitest.config.ts +3 -0
- package/dist/index.cjs.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/types.d.cts +0 -130
- package/dist/types.d.mts +0 -130
|
@@ -0,0 +1,624 @@
|
|
|
1
|
+
import { AssetFolder, CreateData, DeleteData, ListData, UpdateData } from "./generated/asset_folders/types.gen.mjs";
|
|
2
|
+
import { SpaceIdPathOverride } from "./resources/shared.mjs";
|
|
3
|
+
import { Asset, AssetUpdateRequest, BulkMoveData, BulkRestoreData, DeleteManyData, ListData as ListData$1, SignResponseObjectData, SignedResponseObject, UpdateData as UpdateData$1 } from "./generated/assets/types.gen.mjs";
|
|
4
|
+
import { AssetCreate, AssetUploadRequest } from "./resources/assets.mjs";
|
|
5
|
+
import { ComponentFolder, CreateData as CreateData$1, ListData as ListData$2, UpdateData as UpdateData$2 } from "./generated/component_folders/types.gen.mjs";
|
|
6
|
+
import { Component, ComponentCreate, ComponentUpdate, ListData as ListData$3, RestoreVersionData, VersionData, VersionsData } from "./generated/components/types.gen.mjs";
|
|
7
|
+
import { CreateData as CreateData$2, DatasourceEntry, ListData as ListData$4, UpdateData as UpdateData$3 } from "./generated/datasource_entries/types.gen.mjs";
|
|
8
|
+
import { CreateData as CreateData$3, Datasource, ListData as ListData$5, UpdateData as UpdateData$4 } from "./generated/datasources/types.gen.mjs";
|
|
9
|
+
import { CreateData as CreateData$4, InternalTag, ListData as ListData$6, UpdateData as UpdateData$5 } from "./generated/internal_tags/types.gen.mjs";
|
|
10
|
+
import { CreateData as CreateData$5, ListData as ListData$7, Preset, UpdateData as UpdateData$6 } from "./generated/presets/types.gen.mjs";
|
|
11
|
+
import { CreateData as CreateData$6, ListData as ListData$8, Space, UpdateData as UpdateData$7 } from "./generated/spaces/types.gen.mjs";
|
|
12
|
+
import { UpdateMeData, User } from "./generated/users/types.gen.mjs";
|
|
13
|
+
import { Middleware } from "./generated/shared/client/utils.gen.mjs";
|
|
14
|
+
import { Client, ResolvedRequestOptions, RetryOptions } from "./generated/shared/client/types.gen.mjs";
|
|
15
|
+
import { ClientError } from "./error.mjs";
|
|
16
|
+
import { RateLimitConfig } from "./utils/rate-limit.mjs";
|
|
17
|
+
import { createStoriesResource } from "./resources/stories.mjs";
|
|
18
|
+
import { Region } from "@storyblok/region-helper";
|
|
19
|
+
import * as _storyblok_schema0 from "@storyblok/schema";
|
|
20
|
+
import { Block } from "@storyblok/schema";
|
|
21
|
+
|
|
22
|
+
//#region src/client.d.ts
|
|
23
|
+
type ApiResponse<T, ThrowOnError extends boolean = false> = ThrowOnError extends true ? {
|
|
24
|
+
data: T;
|
|
25
|
+
error?: never;
|
|
26
|
+
response: Response;
|
|
27
|
+
request: Request;
|
|
28
|
+
} : {
|
|
29
|
+
data: T;
|
|
30
|
+
error: undefined;
|
|
31
|
+
response: Response;
|
|
32
|
+
request: Request;
|
|
33
|
+
} | {
|
|
34
|
+
data: undefined;
|
|
35
|
+
error: ClientError;
|
|
36
|
+
response: Response;
|
|
37
|
+
request: Request;
|
|
38
|
+
};
|
|
39
|
+
interface RequestConfigOverrides {
|
|
40
|
+
throwOnError?: boolean;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Arbitrary options forwarded to the underlying `fetch()` call.
|
|
44
|
+
*
|
|
45
|
+
* Standard `RequestInit` properties (`cache`, `credentials`, `mode`, …) and
|
|
46
|
+
* non-standard, vendor-specific properties (Next.js `next`, Cloudflare `cf`, …)
|
|
47
|
+
* are both supported.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```ts
|
|
51
|
+
* client.stories.get(123, {
|
|
52
|
+
* fetchOptions: {
|
|
53
|
+
* cache: 'no-store',
|
|
54
|
+
* next: { revalidate: 60 },
|
|
55
|
+
* },
|
|
56
|
+
* })
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
type FetchOptions = Record<string, unknown>;
|
|
60
|
+
interface HttpRequestOptions {
|
|
61
|
+
query?: Record<string, unknown>;
|
|
62
|
+
body?: unknown;
|
|
63
|
+
headers?: Record<string, string>;
|
|
64
|
+
signal?: AbortSignal;
|
|
65
|
+
throwOnError?: RequestConfigOverrides['throwOnError'];
|
|
66
|
+
fetchOptions?: FetchOptions;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Dependencies injected into every resource factory.
|
|
70
|
+
*/
|
|
71
|
+
interface MapiResourceDeps<DefaultThrowOnError extends boolean = false> {
|
|
72
|
+
client: Client;
|
|
73
|
+
spaceId?: number;
|
|
74
|
+
wrapRequest: <TData, ThrowOnError extends boolean = DefaultThrowOnError>(fn: () => Promise<unknown>, throwOnError?: ThrowOnError) => Promise<ApiResponse<TData, ThrowOnError>>;
|
|
75
|
+
}
|
|
76
|
+
type TokenConfig = {
|
|
77
|
+
/** Personal access token for authentication. */personalAccessToken: string;
|
|
78
|
+
oauthToken?: never;
|
|
79
|
+
} | {
|
|
80
|
+
personalAccessToken?: never; /** OAuth bearer token for authentication. */
|
|
81
|
+
oauthToken: string;
|
|
82
|
+
} | {
|
|
83
|
+
personalAccessToken?: undefined;
|
|
84
|
+
oauthToken?: undefined;
|
|
85
|
+
};
|
|
86
|
+
type ManagementApiClientConfig<ThrowOnError extends boolean = false> = TokenConfig & {
|
|
87
|
+
/**
|
|
88
|
+
* The Storyblok space ID. Used as the default for space-scoped endpoints.
|
|
89
|
+
* You can also override it per request via `path.space_id`.
|
|
90
|
+
*/
|
|
91
|
+
spaceId?: number;
|
|
92
|
+
/**
|
|
93
|
+
* Storyblok region. Determines the base URL.
|
|
94
|
+
* @default 'eu'
|
|
95
|
+
*/
|
|
96
|
+
region?: Region;
|
|
97
|
+
/**
|
|
98
|
+
* Override the base URL entirely (e.g. for testing).
|
|
99
|
+
*/
|
|
100
|
+
baseUrl?: string;
|
|
101
|
+
/**
|
|
102
|
+
* Additional request headers.
|
|
103
|
+
*/
|
|
104
|
+
headers?: Record<string, string>;
|
|
105
|
+
/**
|
|
106
|
+
* Throw on HTTP errors instead of returning them.
|
|
107
|
+
* @default false
|
|
108
|
+
*/
|
|
109
|
+
throwOnError?: ThrowOnError;
|
|
110
|
+
/**
|
|
111
|
+
* Retry configuration for failed requests.
|
|
112
|
+
*/
|
|
113
|
+
retry?: RetryOptions;
|
|
114
|
+
/**
|
|
115
|
+
* Request timeout in milliseconds.
|
|
116
|
+
* @default 30_000
|
|
117
|
+
*/
|
|
118
|
+
timeout?: number;
|
|
119
|
+
/**
|
|
120
|
+
* Preventive rate limiting to avoid hitting the Storyblok Management API rate limits.
|
|
121
|
+
*
|
|
122
|
+
* - `undefined` (default): single bucket at maxConcurrency: 6.
|
|
123
|
+
* - `number`: fixed max concurrent requests per second.
|
|
124
|
+
* - `{ maxConcurrency?: number; adaptToServerHeaders?: boolean }`: full config.
|
|
125
|
+
* - `false`: disable rate limiting entirely.
|
|
126
|
+
*/
|
|
127
|
+
rateLimit?: RateLimitConfig | number | false;
|
|
128
|
+
};
|
|
129
|
+
declare function buildResources<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>, client: Client): {
|
|
130
|
+
assetFolders: {
|
|
131
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
132
|
+
query?: ListData["query"];
|
|
133
|
+
signal?: AbortSignal;
|
|
134
|
+
throwOnError?: ThrowOnError | undefined;
|
|
135
|
+
fetchOptions?: FetchOptions;
|
|
136
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
137
|
+
asset_folders?: Array<AssetFolder>;
|
|
138
|
+
}, ThrowOnError>>;
|
|
139
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(assetFolderId: number | string, options?: {
|
|
140
|
+
signal?: AbortSignal;
|
|
141
|
+
throwOnError?: ThrowOnError | undefined;
|
|
142
|
+
fetchOptions?: FetchOptions;
|
|
143
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
144
|
+
asset_folder?: AssetFolder;
|
|
145
|
+
}, ThrowOnError>>;
|
|
146
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
147
|
+
body: CreateData["body"];
|
|
148
|
+
signal?: AbortSignal;
|
|
149
|
+
throwOnError?: ThrowOnError | undefined;
|
|
150
|
+
fetchOptions?: FetchOptions;
|
|
151
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
152
|
+
asset_folder?: AssetFolder;
|
|
153
|
+
}, ThrowOnError>>;
|
|
154
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(assetFolderId: number | string, options: {
|
|
155
|
+
body: UpdateData["body"];
|
|
156
|
+
signal?: AbortSignal;
|
|
157
|
+
throwOnError?: ThrowOnError | undefined;
|
|
158
|
+
fetchOptions?: FetchOptions;
|
|
159
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
160
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(assetFolderId: number | string, options?: {
|
|
161
|
+
query?: DeleteData["query"];
|
|
162
|
+
signal?: AbortSignal;
|
|
163
|
+
throwOnError?: ThrowOnError | undefined;
|
|
164
|
+
fetchOptions?: FetchOptions;
|
|
165
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
166
|
+
};
|
|
167
|
+
assets: {
|
|
168
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
169
|
+
query?: ListData$1["query"];
|
|
170
|
+
signal?: AbortSignal;
|
|
171
|
+
throwOnError?: ThrowOnError | undefined;
|
|
172
|
+
fetchOptions?: FetchOptions;
|
|
173
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
174
|
+
assets?: Array<Asset>;
|
|
175
|
+
}, ThrowOnError>>;
|
|
176
|
+
signResponseObject<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
177
|
+
body: SignResponseObjectData["body"];
|
|
178
|
+
signal?: AbortSignal;
|
|
179
|
+
throwOnError?: ThrowOnError | undefined;
|
|
180
|
+
fetchOptions?: FetchOptions;
|
|
181
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<SignedResponseObject, ThrowOnError>>;
|
|
182
|
+
upload(options: {
|
|
183
|
+
body: AssetUploadRequest;
|
|
184
|
+
file: Blob | ArrayBuffer;
|
|
185
|
+
signal?: AbortSignal;
|
|
186
|
+
fetchOptions?: FetchOptions;
|
|
187
|
+
} & SpaceIdPathOverride): Promise<Asset>;
|
|
188
|
+
create(options: {
|
|
189
|
+
body: AssetCreate;
|
|
190
|
+
file: Blob | ArrayBuffer;
|
|
191
|
+
signal?: AbortSignal;
|
|
192
|
+
fetchOptions?: FetchOptions;
|
|
193
|
+
} & SpaceIdPathOverride): Promise<Asset>;
|
|
194
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(assetId: number | string, options?: {
|
|
195
|
+
signal?: AbortSignal;
|
|
196
|
+
throwOnError?: ThrowOnError | undefined;
|
|
197
|
+
fetchOptions?: FetchOptions;
|
|
198
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<Asset, ThrowOnError>>;
|
|
199
|
+
update(assetId: number | string, options: ({
|
|
200
|
+
body: UpdateData$1["body"];
|
|
201
|
+
file?: undefined;
|
|
202
|
+
} | {
|
|
203
|
+
body: AssetUpdateRequest & {
|
|
204
|
+
short_filename: string;
|
|
205
|
+
};
|
|
206
|
+
file: Blob | ArrayBuffer;
|
|
207
|
+
}) & {
|
|
208
|
+
signal?: AbortSignal;
|
|
209
|
+
fetchOptions?: FetchOptions;
|
|
210
|
+
} & SpaceIdPathOverride): Promise<void>;
|
|
211
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(assetId: number | string, options?: {
|
|
212
|
+
signal?: AbortSignal;
|
|
213
|
+
throwOnError?: ThrowOnError | undefined;
|
|
214
|
+
fetchOptions?: FetchOptions;
|
|
215
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
216
|
+
asset?: Asset;
|
|
217
|
+
}, ThrowOnError>>;
|
|
218
|
+
finalize<ThrowOnError extends boolean = DefaultThrowOnError>(signedResponseObjectId: string, options?: {
|
|
219
|
+
signal?: AbortSignal;
|
|
220
|
+
throwOnError?: ThrowOnError | undefined;
|
|
221
|
+
fetchOptions?: FetchOptions;
|
|
222
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
223
|
+
message?: string;
|
|
224
|
+
}, ThrowOnError>>;
|
|
225
|
+
deleteMany<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
226
|
+
body: DeleteManyData["body"];
|
|
227
|
+
signal?: AbortSignal;
|
|
228
|
+
throwOnError?: ThrowOnError | undefined;
|
|
229
|
+
fetchOptions?: FetchOptions;
|
|
230
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
231
|
+
message?: string;
|
|
232
|
+
}, ThrowOnError>>;
|
|
233
|
+
bulkMove<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
234
|
+
body: BulkMoveData["body"];
|
|
235
|
+
signal?: AbortSignal;
|
|
236
|
+
throwOnError?: ThrowOnError | undefined;
|
|
237
|
+
fetchOptions?: FetchOptions;
|
|
238
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
239
|
+
message?: string;
|
|
240
|
+
}, ThrowOnError>>;
|
|
241
|
+
bulkRestore<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
242
|
+
body: BulkRestoreData["body"];
|
|
243
|
+
signal?: AbortSignal;
|
|
244
|
+
throwOnError?: ThrowOnError | undefined;
|
|
245
|
+
fetchOptions?: FetchOptions;
|
|
246
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
247
|
+
message?: string;
|
|
248
|
+
}, ThrowOnError>>;
|
|
249
|
+
};
|
|
250
|
+
componentFolders: {
|
|
251
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
252
|
+
query?: ListData$2["query"];
|
|
253
|
+
signal?: AbortSignal;
|
|
254
|
+
throwOnError?: ThrowOnError | undefined;
|
|
255
|
+
fetchOptions?: FetchOptions;
|
|
256
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
257
|
+
component_groups: Array<ComponentFolder>;
|
|
258
|
+
}, ThrowOnError>>;
|
|
259
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options?: {
|
|
260
|
+
signal?: AbortSignal;
|
|
261
|
+
throwOnError?: ThrowOnError | undefined;
|
|
262
|
+
fetchOptions?: FetchOptions;
|
|
263
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
264
|
+
component_group?: ComponentFolder;
|
|
265
|
+
}, ThrowOnError>>;
|
|
266
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
267
|
+
body: CreateData$1["body"];
|
|
268
|
+
signal?: AbortSignal;
|
|
269
|
+
throwOnError?: ThrowOnError | undefined;
|
|
270
|
+
fetchOptions?: FetchOptions;
|
|
271
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
272
|
+
component_group?: ComponentFolder;
|
|
273
|
+
}, ThrowOnError>>;
|
|
274
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options: {
|
|
275
|
+
body: UpdateData$2["body"];
|
|
276
|
+
signal?: AbortSignal;
|
|
277
|
+
throwOnError?: ThrowOnError | undefined;
|
|
278
|
+
fetchOptions?: FetchOptions;
|
|
279
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
280
|
+
component_group?: ComponentFolder;
|
|
281
|
+
}, ThrowOnError>>;
|
|
282
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options?: {
|
|
283
|
+
signal?: AbortSignal;
|
|
284
|
+
throwOnError?: ThrowOnError | undefined;
|
|
285
|
+
fetchOptions?: FetchOptions;
|
|
286
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
287
|
+
};
|
|
288
|
+
components: {
|
|
289
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
290
|
+
query?: ListData$3["query"];
|
|
291
|
+
signal?: AbortSignal;
|
|
292
|
+
throwOnError?: ThrowOnError | undefined;
|
|
293
|
+
fetchOptions?: FetchOptions;
|
|
294
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
295
|
+
components?: Array<Component>;
|
|
296
|
+
}, ThrowOnError>>;
|
|
297
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options?: {
|
|
298
|
+
signal?: AbortSignal;
|
|
299
|
+
throwOnError?: ThrowOnError | undefined;
|
|
300
|
+
fetchOptions?: FetchOptions;
|
|
301
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
302
|
+
component?: Component;
|
|
303
|
+
}, ThrowOnError>>;
|
|
304
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
305
|
+
body: Omit<{
|
|
306
|
+
component?: ComponentCreate;
|
|
307
|
+
}, "component"> & {
|
|
308
|
+
component?: _storyblok_schema0.ComponentCreate;
|
|
309
|
+
};
|
|
310
|
+
signal?: AbortSignal;
|
|
311
|
+
throwOnError?: ThrowOnError | undefined;
|
|
312
|
+
fetchOptions?: FetchOptions;
|
|
313
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
314
|
+
component?: Component;
|
|
315
|
+
}, ThrowOnError>>;
|
|
316
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: {
|
|
317
|
+
body: Omit<{
|
|
318
|
+
component?: ComponentUpdate;
|
|
319
|
+
update_content?: boolean;
|
|
320
|
+
}, "component"> & {
|
|
321
|
+
component?: _storyblok_schema0.ComponentUpdate;
|
|
322
|
+
};
|
|
323
|
+
signal?: AbortSignal;
|
|
324
|
+
throwOnError?: ThrowOnError | undefined;
|
|
325
|
+
fetchOptions?: FetchOptions;
|
|
326
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
327
|
+
component?: Component;
|
|
328
|
+
}, ThrowOnError>>;
|
|
329
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options?: {
|
|
330
|
+
signal?: AbortSignal;
|
|
331
|
+
throwOnError?: ThrowOnError | undefined;
|
|
332
|
+
fetchOptions?: FetchOptions;
|
|
333
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
334
|
+
component?: Component;
|
|
335
|
+
}, ThrowOnError>>;
|
|
336
|
+
restore<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options?: {
|
|
337
|
+
signal?: AbortSignal;
|
|
338
|
+
throwOnError?: ThrowOnError | undefined;
|
|
339
|
+
fetchOptions?: FetchOptions;
|
|
340
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
341
|
+
component?: Component;
|
|
342
|
+
}, ThrowOnError>>;
|
|
343
|
+
versions<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
344
|
+
query?: VersionsData["query"];
|
|
345
|
+
signal?: AbortSignal;
|
|
346
|
+
throwOnError?: ThrowOnError | undefined;
|
|
347
|
+
fetchOptions?: FetchOptions;
|
|
348
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
349
|
+
versions?: Array<{
|
|
350
|
+
id?: number;
|
|
351
|
+
event?: string;
|
|
352
|
+
created_at?: string;
|
|
353
|
+
author_id?: number;
|
|
354
|
+
item_id?: number;
|
|
355
|
+
author?: string;
|
|
356
|
+
is_draft?: boolean;
|
|
357
|
+
}>;
|
|
358
|
+
}, ThrowOnError>>;
|
|
359
|
+
version<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, versionId: VersionData["path"]["version_id"], options?: {
|
|
360
|
+
signal?: AbortSignal;
|
|
361
|
+
throwOnError?: ThrowOnError | undefined;
|
|
362
|
+
fetchOptions?: FetchOptions;
|
|
363
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
364
|
+
component_version?: {
|
|
365
|
+
schema?: {
|
|
366
|
+
[key: string]: unknown;
|
|
367
|
+
};
|
|
368
|
+
};
|
|
369
|
+
}, ThrowOnError>>;
|
|
370
|
+
restoreVersion<ThrowOnError extends boolean = DefaultThrowOnError>(versionId: RestoreVersionData["path"]["version_id"], options: {
|
|
371
|
+
body: RestoreVersionData["body"];
|
|
372
|
+
signal?: AbortSignal;
|
|
373
|
+
throwOnError?: ThrowOnError | undefined;
|
|
374
|
+
fetchOptions?: FetchOptions;
|
|
375
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
376
|
+
component?: Component;
|
|
377
|
+
}, ThrowOnError>>;
|
|
378
|
+
};
|
|
379
|
+
datasourceEntries: {
|
|
380
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
381
|
+
query?: ListData$4["query"];
|
|
382
|
+
signal?: AbortSignal;
|
|
383
|
+
throwOnError?: ThrowOnError | undefined;
|
|
384
|
+
fetchOptions?: FetchOptions;
|
|
385
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
386
|
+
datasource_entries?: Array<DatasourceEntry>;
|
|
387
|
+
}, ThrowOnError>>;
|
|
388
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceEntryId: number, options?: {
|
|
389
|
+
signal?: AbortSignal;
|
|
390
|
+
throwOnError?: ThrowOnError | undefined;
|
|
391
|
+
fetchOptions?: FetchOptions;
|
|
392
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
393
|
+
datasource_entry?: DatasourceEntry;
|
|
394
|
+
}, ThrowOnError>>;
|
|
395
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
396
|
+
body: CreateData$2["body"];
|
|
397
|
+
signal?: AbortSignal;
|
|
398
|
+
throwOnError?: ThrowOnError | undefined;
|
|
399
|
+
fetchOptions?: FetchOptions;
|
|
400
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
401
|
+
datasource_entry?: DatasourceEntry;
|
|
402
|
+
}, ThrowOnError>>;
|
|
403
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceEntryId: number, options: {
|
|
404
|
+
body: UpdateData$3["body"];
|
|
405
|
+
signal?: AbortSignal;
|
|
406
|
+
throwOnError?: ThrowOnError | undefined;
|
|
407
|
+
fetchOptions?: FetchOptions;
|
|
408
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
409
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceEntryId: number, options?: {
|
|
410
|
+
signal?: AbortSignal;
|
|
411
|
+
throwOnError?: ThrowOnError | undefined;
|
|
412
|
+
fetchOptions?: FetchOptions;
|
|
413
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
414
|
+
};
|
|
415
|
+
datasources: {
|
|
416
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
417
|
+
query?: ListData$5["query"];
|
|
418
|
+
signal?: AbortSignal;
|
|
419
|
+
throwOnError?: ThrowOnError | undefined;
|
|
420
|
+
fetchOptions?: FetchOptions;
|
|
421
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
422
|
+
datasources?: Array<Datasource>;
|
|
423
|
+
}, ThrowOnError>>;
|
|
424
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceId: number, options?: {
|
|
425
|
+
signal?: AbortSignal;
|
|
426
|
+
throwOnError?: ThrowOnError | undefined;
|
|
427
|
+
fetchOptions?: FetchOptions;
|
|
428
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
429
|
+
datasource?: Datasource;
|
|
430
|
+
}, ThrowOnError>>;
|
|
431
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
432
|
+
body: CreateData$3["body"];
|
|
433
|
+
signal?: AbortSignal;
|
|
434
|
+
throwOnError?: ThrowOnError | undefined;
|
|
435
|
+
fetchOptions?: FetchOptions;
|
|
436
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
437
|
+
datasource?: Datasource;
|
|
438
|
+
}, ThrowOnError>>;
|
|
439
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceId: number, options: {
|
|
440
|
+
body: UpdateData$4["body"];
|
|
441
|
+
signal?: AbortSignal;
|
|
442
|
+
throwOnError?: ThrowOnError | undefined;
|
|
443
|
+
fetchOptions?: FetchOptions;
|
|
444
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
445
|
+
datasource?: Datasource;
|
|
446
|
+
}, ThrowOnError>>;
|
|
447
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceId: number, options?: {
|
|
448
|
+
signal?: AbortSignal;
|
|
449
|
+
throwOnError?: ThrowOnError | undefined;
|
|
450
|
+
fetchOptions?: FetchOptions;
|
|
451
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
452
|
+
};
|
|
453
|
+
delete: <TData = unknown>(path: string, options?: HttpRequestOptions) => Promise<ApiResponse<TData, DefaultThrowOnError>>;
|
|
454
|
+
get: <TData = unknown>(path: string, options?: HttpRequestOptions) => Promise<ApiResponse<TData, DefaultThrowOnError>>;
|
|
455
|
+
patch: <TData = unknown>(path: string, options?: HttpRequestOptions) => Promise<ApiResponse<TData, DefaultThrowOnError>>;
|
|
456
|
+
interceptors: Middleware<Request, Response, unknown, ResolvedRequestOptions>;
|
|
457
|
+
internalTags: {
|
|
458
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
459
|
+
query?: ListData$6["query"];
|
|
460
|
+
signal?: AbortSignal;
|
|
461
|
+
throwOnError?: ThrowOnError | undefined;
|
|
462
|
+
fetchOptions?: FetchOptions;
|
|
463
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
464
|
+
internal_tags?: Array<InternalTag>;
|
|
465
|
+
}, ThrowOnError>>;
|
|
466
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
467
|
+
body: CreateData$4["body"];
|
|
468
|
+
signal?: AbortSignal;
|
|
469
|
+
throwOnError?: ThrowOnError | undefined;
|
|
470
|
+
fetchOptions?: FetchOptions;
|
|
471
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
472
|
+
internal_tag?: InternalTag;
|
|
473
|
+
}, ThrowOnError>>;
|
|
474
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(internalTagId: number, options: {
|
|
475
|
+
body: UpdateData$5["body"];
|
|
476
|
+
signal?: AbortSignal;
|
|
477
|
+
throwOnError?: ThrowOnError | undefined;
|
|
478
|
+
fetchOptions?: FetchOptions;
|
|
479
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
480
|
+
internal_tag?: InternalTag;
|
|
481
|
+
}, ThrowOnError>>;
|
|
482
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(internalTagId: number, options?: {
|
|
483
|
+
signal?: AbortSignal;
|
|
484
|
+
throwOnError?: ThrowOnError | undefined;
|
|
485
|
+
fetchOptions?: FetchOptions;
|
|
486
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>>;
|
|
487
|
+
};
|
|
488
|
+
post: <TData = unknown>(path: string, options?: HttpRequestOptions) => Promise<ApiResponse<TData, DefaultThrowOnError>>;
|
|
489
|
+
presets: {
|
|
490
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
491
|
+
query?: ListData$7["query"];
|
|
492
|
+
signal?: AbortSignal;
|
|
493
|
+
throwOnError?: ThrowOnError | undefined;
|
|
494
|
+
fetchOptions?: FetchOptions;
|
|
495
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
496
|
+
presets: Array<Preset>;
|
|
497
|
+
}, ThrowOnError>>;
|
|
498
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(presetId: number | string, options?: {
|
|
499
|
+
signal?: AbortSignal;
|
|
500
|
+
throwOnError?: ThrowOnError | undefined;
|
|
501
|
+
fetchOptions?: FetchOptions;
|
|
502
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
503
|
+
preset?: Preset;
|
|
504
|
+
}, ThrowOnError>>;
|
|
505
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
506
|
+
body: CreateData$5["body"];
|
|
507
|
+
signal?: AbortSignal;
|
|
508
|
+
throwOnError?: ThrowOnError | undefined;
|
|
509
|
+
fetchOptions?: FetchOptions;
|
|
510
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
511
|
+
preset?: Preset;
|
|
512
|
+
}, ThrowOnError>>;
|
|
513
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(presetId: number | string, options: {
|
|
514
|
+
body: UpdateData$6["body"];
|
|
515
|
+
signal?: AbortSignal;
|
|
516
|
+
throwOnError?: ThrowOnError | undefined;
|
|
517
|
+
fetchOptions?: FetchOptions;
|
|
518
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
519
|
+
preset?: Preset;
|
|
520
|
+
}, ThrowOnError>>;
|
|
521
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(presetId: number | string, options?: {
|
|
522
|
+
signal?: AbortSignal;
|
|
523
|
+
throwOnError?: ThrowOnError | undefined;
|
|
524
|
+
fetchOptions?: FetchOptions;
|
|
525
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
526
|
+
preset?: Preset;
|
|
527
|
+
}, ThrowOnError>>;
|
|
528
|
+
};
|
|
529
|
+
put: <TData = unknown>(path: string, options?: HttpRequestOptions) => Promise<ApiResponse<TData, DefaultThrowOnError>>;
|
|
530
|
+
spaces: {
|
|
531
|
+
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
532
|
+
query?: ListData$8["query"];
|
|
533
|
+
signal?: AbortSignal;
|
|
534
|
+
throwOnError?: ThrowOnError | undefined;
|
|
535
|
+
fetchOptions?: FetchOptions;
|
|
536
|
+
}): Promise<ApiResponse<{
|
|
537
|
+
spaces?: Array<Space>;
|
|
538
|
+
}, ThrowOnError>>;
|
|
539
|
+
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
540
|
+
body: CreateData$6["body"];
|
|
541
|
+
signal?: AbortSignal;
|
|
542
|
+
throwOnError?: ThrowOnError | undefined;
|
|
543
|
+
fetchOptions?: FetchOptions;
|
|
544
|
+
}): Promise<ApiResponse<{
|
|
545
|
+
space?: Space;
|
|
546
|
+
}, ThrowOnError>>;
|
|
547
|
+
get<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
548
|
+
signal?: AbortSignal;
|
|
549
|
+
throwOnError?: ThrowOnError | undefined;
|
|
550
|
+
fetchOptions?: FetchOptions;
|
|
551
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
552
|
+
space?: Space;
|
|
553
|
+
}, ThrowOnError>>;
|
|
554
|
+
update<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
555
|
+
body: UpdateData$7["body"];
|
|
556
|
+
signal?: AbortSignal;
|
|
557
|
+
throwOnError?: ThrowOnError | undefined;
|
|
558
|
+
fetchOptions?: FetchOptions;
|
|
559
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
560
|
+
space?: Space;
|
|
561
|
+
}, ThrowOnError>>;
|
|
562
|
+
delete<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
563
|
+
signal?: AbortSignal;
|
|
564
|
+
throwOnError?: ThrowOnError | undefined;
|
|
565
|
+
fetchOptions?: FetchOptions;
|
|
566
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<{
|
|
567
|
+
space?: Space;
|
|
568
|
+
}, ThrowOnError>>;
|
|
569
|
+
};
|
|
570
|
+
users: {
|
|
571
|
+
me<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
572
|
+
signal?: AbortSignal;
|
|
573
|
+
throwOnError?: ThrowOnError | undefined;
|
|
574
|
+
fetchOptions?: FetchOptions;
|
|
575
|
+
}): Promise<ApiResponse<{
|
|
576
|
+
user?: User;
|
|
577
|
+
}, ThrowOnError>>;
|
|
578
|
+
updateMe<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
579
|
+
body: UpdateMeData["body"];
|
|
580
|
+
signal?: AbortSignal;
|
|
581
|
+
throwOnError?: ThrowOnError | undefined;
|
|
582
|
+
fetchOptions?: FetchOptions;
|
|
583
|
+
}): Promise<ApiResponse<{
|
|
584
|
+
user?: User;
|
|
585
|
+
}, ThrowOnError>>;
|
|
586
|
+
};
|
|
587
|
+
};
|
|
588
|
+
type StoryblokTypesConfig = {
|
|
589
|
+
components: Block;
|
|
590
|
+
} | {
|
|
591
|
+
blocks: Block;
|
|
592
|
+
};
|
|
593
|
+
type ResolveComponents<T extends StoryblokTypesConfig> = T extends {
|
|
594
|
+
components: infer C extends Block;
|
|
595
|
+
} ? C : T extends {
|
|
596
|
+
blocks: infer B extends Block;
|
|
597
|
+
} ? B : never;
|
|
598
|
+
/**
|
|
599
|
+
* The return type of `createManagementApiClient`, parameterised by `TComponents` so that
|
|
600
|
+
* `.stories` methods can narrow story content types without touching the runtime object.
|
|
601
|
+
*/
|
|
602
|
+
type ManagementApiClient<TComponents extends Block = Block, DefaultThrowOnError extends boolean = false> = ReturnType<typeof buildResources<DefaultThrowOnError>> & {
|
|
603
|
+
stories: ReturnType<typeof createStoriesResource<TComponents, DefaultThrowOnError>>;
|
|
604
|
+
/**
|
|
605
|
+
* Returns the same client instance cast to a version that narrows story content
|
|
606
|
+
* to the provided component types. No runtime cost — type parameter is erased.
|
|
607
|
+
*
|
|
608
|
+
* Accepts either `{ components: ... }` or `{ blocks: ... }` — the latter matches the
|
|
609
|
+
* `Schema` type produced by `@storyblok/schema`'s `InferSchema`.
|
|
610
|
+
*
|
|
611
|
+
* @example
|
|
612
|
+
* ```ts
|
|
613
|
+
* import type { Schema } from './schema';
|
|
614
|
+
*
|
|
615
|
+
* const client = createManagementApiClient({ personalAccessToken: '...' })
|
|
616
|
+
* .withTypes<Schema>();
|
|
617
|
+
* ```
|
|
618
|
+
*/
|
|
619
|
+
withTypes: <T extends StoryblokTypesConfig>() => ManagementApiClient<ResolveComponents<T>, DefaultThrowOnError>;
|
|
620
|
+
};
|
|
621
|
+
declare const createManagementApiClient: <DefaultThrowOnError extends boolean = false>(config: ManagementApiClientConfig<DefaultThrowOnError>) => ManagementApiClient<Block, DefaultThrowOnError>;
|
|
622
|
+
//#endregion
|
|
623
|
+
export { ApiResponse, FetchOptions, HttpRequestOptions, ManagementApiClient, ManagementApiClientConfig, MapiResourceDeps, RequestConfigOverrides, createManagementApiClient };
|
|
624
|
+
//# sourceMappingURL=client.d.mts.map
|