UNPKG

@altostra/core

Version:

Core library for shared types and logic

39 lines (38 loc) 1.71 kB
import type { S3BucketName } from "../../../aws/CustomTypes/S3BucketName"; import type { ObjectValidations } from '@altostra/type-validations'; import type { AWSRegion } from 'aws-sdk/clients/cur'; import type { ISODate } from "../../CustomTypes/ISODate"; import type { NonEmptyString } from "../../CustomTypes/NonEmptyString"; import type { RoleStatus } from "../AwsAccount"; export type { RoleStatus }; export declare type AltostraAccountId = string; export declare type AccountId = string; export declare type ExternalCustomerId = string; export declare type Vendor = 'AWS' | 'Playground'; export interface CrossAccountInfo { altostraAccountId: AltostraAccountId; accountName: NonEmptyString; integrationAccountId: AccountId; roleStatus: RoleStatus; vendor: Vendor; bucketArn?: string; bucketPath?: string; createdAt?: ISODate; updatedAt?: ISODate; isDefault?: boolean; } export interface DisplayCrossAccountInfo extends CrossAccountInfo { region?: AWSRegion; } export interface CrossAccountCredentials extends CrossAccountInfo { externalId: ExternalCustomerId; roleArn?: string; bucketName: S3BucketName; region?: string; stackId?: string; correlationId?: string; } export declare const crossAccountInfoValidations: ObjectValidations<CrossAccountInfo>; export declare const isCrossAccountInfo: import("@altostra/type-validations").ObjectOfTypeValidation<CrossAccountInfo>; export declare const isDisplayCrossAccountInfo: import("@altostra/type-validations").ObjectOfTypeValidation<DisplayCrossAccountInfo>; export declare const isCrossAccountCredentials: import("@altostra/type-validations").ObjectOfTypeValidation<CrossAccountCredentials>;