@cloud-copilot/iam-collect
Version:
Collect IAM information from AWS Accounts
49 lines • 2.3 kB
TypeScript
import { Account, Organization, OrganizationalUnit, OrganizationsClient, Root } from '@aws-sdk/client-organizations';
import { Sync } from '../sync.js';
export declare const OrganizationSync: Sync;
/**
* Get the details of an organization or an account.
*
* @param client The OrganizationsClient to use
* @returns the details of the organization the account belongs to or undefined if the account is not part of an organization or does not have permission.
*/
export declare function getOrganizationDetails(client: OrganizationsClient): Promise<Organization | undefined>;
/**
* Get the root Organizational Unit for an organization
*
* @param client The OrganizationsClient to use
* @returns the root Organizational Unit for the organization if it exists
*/
export declare function getOrganizationRoot(client: OrganizationsClient): Promise<Root | undefined>;
/**
* Get the tags for an Organizational Unit
*
* @param client The OrganizationsClient to use
* @param ouId The AWS id of the Organizational Unit to get the tags for
* @returns The tags for the Organizational Unit
*/
export declare function getTagsForOu(client: OrganizationsClient, ouId: string): Promise<Record<string, string> | undefined>;
/**
* Get the tags for an account
* @param client The OrganizationsClient to use
* @param accountId The AWS id of the account to get the tags for
* @returns The tags for the account
*/
export declare function getTagsForAccount(client: OrganizationsClient, accountId: string): Promise<Record<string, string> | undefined>;
/**
* Get the organizational units for a parent organizational unit
*
* @param client The OrganizationsClient to use
* @param parentId The AWS id of the parent organizational unit
* @returns The organizational units directly under the parent
*/
export declare function getChildOrgUnits(client: OrganizationsClient, parentId: string): Promise<OrganizationalUnit[]>;
/**
* Get the accounts for a parent organizational unit
*
* @param client The OrganizationsClient to use
* @param parentId The AWS id of the parent organizational unit
* @returns The accounts directly under the parent
*/
export declare function getAccountsForParent(client: OrganizationsClient, parentId: string): Promise<Account[]>;
//# sourceMappingURL=organizations.d.ts.map