@cloud-copilot/iam-lens
Version:
Visibility in IAM in and across AWS accounts
29 lines • 1.72 kB
TypeScript
import { Simulation } from '@cloud-copilot/iam-simulate';
import { IamCollectClient } from './collect/client.js';
/**
* Get the account ID for a given resource ARN. Lookup index if necessary to find the account ID.
*
* @param collectClient the IAM collect client to use for retrieving the account ID
* @param resourceArn the ARN of the resource to get the account ID for
* @returns the account ID for the specified resource, or undefined if not found
*/
export declare function getAccountIdForResource(collectClient: IamCollectClient, resourceArn: string): Promise<string | undefined>;
/**
* Get the resource control policies (RCPs) for a given resource ARN.
*
* @param collectClient the IAM collect client to use for retrieving RCPs
* @param resourceArn the ARN of the resource to get RCPs for
* @param resourceAccount the account ID of the resource, if known
* @returns an array of resource control policies for the specified resource
*/
export declare function getRcpsForResource(collectClient: IamCollectClient, resourceArn: string, resourceAccount: string | undefined): Promise<Simulation['resourceControlPolicies']>;
/**
* Get the resource policy for a resource, if any.
*
* @param collectClient the IAM collect client to use for retrieving the resource policy
* @param resourceArn the ARN of the resource to get the policy for
* @param resourceAccount the account ID of the resource, if known
* @returns the resource policy for the specified resource, or undefined if not found
*/
export declare function getResourcePolicyForResource(collectClient: IamCollectClient, resourceArn: string, resourceAccount: string | undefined): Promise<any | undefined>;
//# sourceMappingURL=resources.d.ts.map