1import type * as inspector2 from "@distilled.cloud/aws/inspector2";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `inspector2:CreateFindingsReport`.
7 *
8 * Creates a finding report. By default only `ACTIVE` findings are returned in
9 * the report. To see `SUPRESSED` or `CLOSED` findings you must specify
10 * a value for the `findingStatus` filter criteria.
11 *
12 * Provide the implementation with
13 * `Effect.provide(AWS.Inspector2.CreateFindingsReportHttp)`.
14 * ### Findings Reports & SBOM Exports
15 * **Example:** Export Findings to S3
16 * ```typescript
17 * // init
18 * const createFindingsReport = yield* AWS.Inspector2.CreateFindingsReport();
19 *
20 * // runtime
21 * const { reportId } = yield* createFindingsReport({
22 * reportFormat: "JSON",
23 * s3Destination: { bucketName, keyPrefix: "findings/", kmsKeyArn },
24 * });
25 * ```
26 *
27 * @binding
28 */
29export interface CreateFindingsReport extends Binding.Service<
30 CreateFindingsReport,
31 "AWS.Inspector2.CreateFindingsReport",
32 () => Effect.Effect<
33 (
34 request: inspector2.CreateFindingsReportRequest,
35 ) => Effect.Effect<
36 inspector2.CreateFindingsReportResponse,
37 inspector2.CreateFindingsReportError
38 >
39 >
40> {}
41export const CreateFindingsReport = Binding.Service<CreateFindingsReport>(
42 "AWS.Inspector2.CreateFindingsReport",
43);