aws-iam-policy-tool
Version:
AWS IAM role/policy management cli tool
45 lines (44 loc) • 1.44 kB
TypeScript
import { IAM } from 'aws-sdk';
import { ArnType, DocJson } from './operation';
export interface PolicyStatementNode {
Sid: string;
Effect: string;
Action: any;
Resource: any;
}
export interface PolicyDocumentNode {
Version: string;
Statement: PolicyStatementNode[];
}
export interface PolicyNode {
PolicyName: string;
Path: string;
}
export declare class PolicyEntry {
arn: ArnType;
policyNode: PolicyNode;
document: PolicyDocumentNode;
constructor(arn: ArnType, policy: PolicyNode, document: PolicyDocumentNode);
readonly policyName: string;
asJson(): any;
documentAsJson(): DocJson;
toCreatePolicyParams(indent: number): IAM.CreatePolicyRequest;
private convertDocToJSON;
}
export interface PolicyVersionsInfo {
defaultId: string;
oldestId: string;
count: number;
}
export interface GetPolicyDefaultWithVersionInfoResult {
currentPolicy: PolicyEntry;
}
export declare class PolicyFetcher {
private arnPrefix?;
constructor(arnPrefix?: string);
getPolicyEntry(arn: string, versionId: string): Promise<PolicyEntry>;
getPolicyDefaultWithVersionInfo(entry: PolicyEntry): Promise<GetPolicyDefaultWithVersionInfoResult & PolicyVersionsInfo>;
getPolicyDocumentVersion(policyArn: string, verionId: string): Promise<PolicyDocumentNode>;
private getPolicyVersionsInfoFrom;
}
export declare function getPolicyArnPrefix(): Promise<string>;