UNPKG

@cloud-copilot/iam-policy

Version:
41 lines 1.13 kB
import { Statement } from '../statements/statement.js'; export interface Policy<T = undefined> { /** * The version of the policy */ version(): string | undefined; /** * The ID of the policy */ id(): string | undefined; /** * The statements in the policy */ statements(): Statement[]; /** * Whether the statement is an array */ statementIsArray(): boolean; /** * The raw policy object as JSON */ toJSON(): any; /** * Metadata is any object to store additional information about the policy. * Up to you as a user to define the type of the metadata and is optional. */ metadata(): T; } export declare class PolicyImpl<T = undefined> implements Policy<T> { private readonly policyObject; private readonly theMetadata?; constructor(policyObject: any, theMetadata?: T | undefined); version(): string | undefined; id(): string | undefined; statements(): Statement[]; private newStatements; statementIsArray(): boolean; toJSON(): any; metadata(): T; } //# sourceMappingURL=policy.d.ts.map