UNPKG

@cloud-copilot/iam-collect

Version:

Collect IAM information from AWS Accounts

58 lines 4.24 kB
import { type AwsIamStore, type OrganizationPolicyType, type ResourceTypeParts } from '../AwsIamStore.js'; /** * A SQLite-based implementation of the AwsIamStore interface. */ export declare class SqliteAwsIamStore implements AwsIamStore { private readonly dbPath; private readonly partition; private readonly iamCollectVersion; private readonly db; constructor(dbPath: string, partition: string, iamCollectVersion: string); close(): void; writeBatch(fn: () => Promise<void>): Promise<void>; /** * Returns the SQL DDL for a SQLite database. * * @returns The DDL to create the schema in a SQLite database. */ static schemaSql(iamCollectVersion: string): string; private init; private run; private query; private isEmptyContent; private serialize; saveResourceMetadata(accountId: string, arn: string, metadataType: string, data: string | any): Promise<void>; listResourceMetadata(accountId: string, arn: string): Promise<string[]>; getResourceMetadata<T, D extends T>(accountId: string, arn: string, metadataType: string, defaultValue?: D): Promise<D extends undefined ? T | undefined : T>; deleteResourceMetadata(accountId: string, arn: string, metadataType: string): Promise<void>; deleteResource(accountId: string, arn: string): Promise<void>; listResources(accountId: string, options: ResourceTypeParts): Promise<string[]>; findResourceMetadata<T>(accountId: string, options: ResourceTypeParts): Promise<T[]>; syncResourceList(accountId: string, options: ResourceTypeParts, desiredResources: string[]): Promise<void>; deleteAccountMetadata(accountId: string, metadataType: string): Promise<void>; saveAccountMetadata(accountId: string, metadataType: string, data: any): Promise<void>; getAccountMetadata<T, D extends T>(accountId: string, metadataType: string, defaultValue?: D): Promise<D extends undefined ? T | undefined : T>; getOrganizationMetadata<T, D extends T>(organizationId: string, metadataType: string, defaultValue?: D): Promise<D extends undefined ? T | undefined : T>; saveOrganizationMetadata(organizationId: string, metadataType: string, data: any): Promise<void>; deleteOrganizationMetadata(organizationId: string, metadataType: string): Promise<void>; listOrganizationalUnits(organizationId: string): Promise<string[]>; deleteOrganizationalUnitMetadata(organizationId: string, ouId: string, metadataType: string): Promise<void>; saveOrganizationalUnitMetadata(organizationId: string, ouId: string, metadataType: string, data: any): Promise<void>; getOrganizationalUnitMetadata<T, D extends T>(organizationId: string, ouId: string, metadataType: string, defaultValue?: D): Promise<D extends undefined ? T | undefined : T>; deleteOrganizationalUnit(organizationId: string, ouId: string): Promise<void>; deleteOrganizationPolicyMetadata(organizationId: string, policyType: OrganizationPolicyType, policyId: string, metadataType: string): Promise<void>; saveOrganizationPolicyMetadata(organizationId: string, policyType: OrganizationPolicyType, policyId: string, metadataType: string, data: any): Promise<void>; getOrganizationPolicyMetadata<T, D extends T>(organizationId: string, policyType: OrganizationPolicyType, policyId: string, metadataType: string, defaultValue?: D): Promise<D extends undefined ? T | undefined : T>; deleteOrganizationPolicy(organizationId: string, policyType: OrganizationPolicyType, policyId: string): Promise<void>; listOrganizationPolicies(organizationId: string, policyType: OrganizationPolicyType): Promise<string[]>; syncRamResources(accountId: string, region: string | undefined, arns: string[]): Promise<void>; saveRamResource(accountId: string, arn: string, data: any): Promise<void>; getRamResource<T, D extends T>(accountId: string, arn: string, defaultValue?: D): Promise<D extends undefined ? T | undefined : T>; listAccountIds(): Promise<string[]>; getIndex<T>(indexName: string, defaultValue: T): Promise<{ data: T; lockId: string; }>; saveIndex<T>(indexName: string, data: T, lockId: string): Promise<boolean>; } //# sourceMappingURL=SqliteAwsIamStore.d.ts.map