| 1 | import * as greengrassv2 from "@distilled.cloud/aws/greengrassv2"; |
| 2 | import * as Layer from "effect/Layer"; |
| 3 | import { makeGreengrassAccountHttpBinding } from "./BindingHttp.ts"; |
| 4 | import { DeleteCoreDevice } from "./DeleteCoreDevice.ts"; |
| 5 | |
| 6 | export const DeleteCoreDeviceHttp = Layer.effect( |
| 7 | DeleteCoreDevice, |
| 8 | makeGreengrassAccountHttpBinding({ |
| 9 | tag: "AWS.GreengrassV2.DeleteCoreDevice", |
| 10 | operation: greengrassv2.deleteCoreDevice, |
| 11 | // Deleting a core device resolves the device's deployment job executions |
| 12 | // with the caller's credentials (documented dependent action). |
| 13 | actions: ["greengrass:DeleteCoreDevice", "iot:DescribeJobExecution"], |
| 14 | }), |
| 15 | ); |