1import type { PolicyStatement } from "../IAM/Policy.ts";
2
3/**
4 * Bind-time options shared by the handler-invoking Cloud Control bindings
5 * ({@link CreateResource}, {@link UpdateResource}, {@link DeleteResource},
6 * {@link GetResource}, {@link ListResources}).
7 */
8export interface CloudControlBindingOptions {
9 /**
10 * Additional IAM policy statements attached to the host alongside the
11 * `cloudformation:*Resource` grant.
12 *
13 * Cloud Control invokes the target resource type's CloudFormation handlers
14 * with the caller's credentials, so the host also needs the handler's
15 * underlying service permissions — e.g. `ssm:PutParameter` +
16 * `ssm:GetParameters` to create an `AWS::SSM::Parameter`. Consult the
17 * `handlers` section of the resource type's schema for the exact actions.
18 */
19 handlerPolicyStatements?: PolicyStatement[];
20}