import { type OrganizationsClient, type Account } from "@aws-sdk/client-organizations"; import { type Result } from "@fjall/generator"; export interface CreateAccountResult { accountId: string; accountName: string; } /** * List all accounts in the organisation, handling pagination. */ export declare function listAccounts(client: OrganizationsClient, abortSignal?: AbortSignal): Promise>; /** * Find an account by ID in the organisation. */ export declare function findAccount(client: OrganizationsClient, accountId: string): Promise>; /** * Create an AWS account and poll until creation completes. * * @param maxAttempts Maximum polling attempts (default: 180 = ~15 minutes at 5s intervals) * @param delayMs Delay between polling attempts in milliseconds (default: 5000) * @param abortSignal Optional shutdown signal — short-circuits the poll loop * and inter-poll sleeps so SIGTERM does not stall for up to ~15 minutes */ export declare function createAccount(client: OrganizationsClient, accountName: string, email: string, maxAttempts?: number, delayMs?: number, abortSignal?: AbortSignal): Promise>;