1import type * as qapps from "@distilled.cloud/aws/qapps";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { QApp } from "./QApp.ts";
5
6/**
7 * Request for {@link BatchUpdateCategory} — `instanceId` is injected from the bound Q App.
8 */
9export interface BatchUpdateCategoryRequest extends Omit<
10 qapps.BatchUpdateCategoryInput,
11 "instanceId"
12> {}
13
14/**
15 * Runtime binding for `qapps:BatchUpdateCategory`.
16 *
17 * Renames or recolors existing library categories. Provide the implementation with
18 * `Effect.provide(AWS.QApps.BatchUpdateCategoryHttp)`.
19 * ### Categories
20 * **Example:** Rename a Category
21 * ```typescript
22 * // init — bind the operation to the Q App
23 * const batchUpdateCategory = yield* AWS.QApps.BatchUpdateCategory(app);
24 *
25 * // runtime
26 * yield* batchUpdateCategory({
27 * categories: [{ id: categoryId, title: "People Ops" }],
28 * });
29 * ```
30 *
31 * @binding
32 */
33export interface BatchUpdateCategory extends Binding.Service<
34 BatchUpdateCategory,
35 "AWS.QApps.BatchUpdateCategory",
36 (
37 app: QApp,
38 ) => Effect.Effect<
39 (
40 request: BatchUpdateCategoryRequest,
41 ) => Effect.Effect<
42 qapps.BatchUpdateCategoryResponse,
43 qapps.BatchUpdateCategoryError
44 >
45 >
46> {}
47
48export const BatchUpdateCategory = Binding.Service<BatchUpdateCategory>(
49 "AWS.QApps.BatchUpdateCategory",
50);