UNPKG

aws-iam-policy-tool

Version:
45 lines (44 loc) 1.44 kB
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>;