@altostra/core
Version:
Core library for shared types and logic
63 lines (62 loc) • 7.02 kB
TypeScript
import type { NonEmptyString } from "../../common/CustomTypes/NonEmptyString";
import type { NaturalNumber, PositiveOrZero } from "../../common/CustomTypes/Numerics";
import type { RootedPath } from "../../common/CustomTypes/RootedPath";
import type { SecurityGroupId } from "../../common/CustomTypes/SecurityGroupId";
import type { SubnetId } from "../../common/CustomTypes/SubnetId";
import type { ResourceBase } from "./Common";
import type { FunctionEnvironment, PolicyReference } from "./ComputeFunction";
export declare type FargateServerlessServiceType = 'resource.compute.web-service';
export interface FargateServerlessService extends ResourceBase {
type: FargateServerlessServiceType;
requirements: Requirements;
vpcConfig: VpcConfig;
scaling: Scaling;
image: Image;
environment?: FunctionEnvironment;
policies?: PolicyReference | PolicyReference[];
}
export declare const isFargateServerlessService: import("@altostra/type-validations").ObjectOfTypeValidation<{
type: string;
requirements: {
vCPU: any;
memory: any;
};
vpcConfig: {
vpcId: any;
securityGroupIds: any;
subnetIds: any;
};
scaling: {
instances: any;
};
image: {
name: any;
uri: any;
port: any;
healthCheckPath: any;
};
environment: FunctionEnvironment | undefined;
policies: import("../../aws/Arn").Arn | import("../../aws/IamRoleName").IamRoleName | import("../../aws/CloudFormation/IntrinsicFunctions").Cidr | import("../../aws/CloudFormation/IntrinsicFunctions").Base64 | import("../../aws/CloudFormation/IntrinsicFunctions").And | import("../../aws/CloudFormation/IntrinsicFunctions").Equals | import("../../aws/CloudFormation/IntrinsicFunctions").Not | import("../../aws/CloudFormation/IntrinsicFunctions").Or | import("../../aws/CloudFormation/IntrinsicFunctions").FindInMap | import("../../aws/CloudFormation/IntrinsicFunctions").GetAtt | import("../../aws/CloudFormation/IntrinsicFunctions").GetAZs | import("../../aws/CloudFormation/IntrinsicFunctions").If | import("../../aws/CloudFormation/IntrinsicFunctions").ImportValue | import("../../aws/CloudFormation/IntrinsicFunctions").Join | import("../../aws/CloudFormation/IntrinsicFunctions").Length | import("../../aws/CloudFormation/IntrinsicFunctions").Ref | import("../../aws/CloudFormation/IntrinsicFunctions").Select | import("../../aws/CloudFormation/IntrinsicFunctions").Split | import("../../aws/CloudFormation/IntrinsicFunctions").Sub | import("../../aws/CloudFormation/IntrinsicFunctions/Transform").Transform | import("../../aws/CloudFormation/PolicyDocument").IamPolicyDocument | (import("../../aws/Arn").Arn | import("../../aws/IamRoleName").IamRoleName | import("../../aws/CloudFormation/IntrinsicFunctions").Cidr | import("../../aws/CloudFormation/IntrinsicFunctions").Base64 | import("../../aws/CloudFormation/IntrinsicFunctions").And | import("../../aws/CloudFormation/IntrinsicFunctions").Equals | import("../../aws/CloudFormation/IntrinsicFunctions").Not | import("../../aws/CloudFormation/IntrinsicFunctions").Or | import("../../aws/CloudFormation/IntrinsicFunctions").FindInMap | import("../../aws/CloudFormation/IntrinsicFunctions").GetAtt | import("../../aws/CloudFormation/IntrinsicFunctions").GetAZs | import("../../aws/CloudFormation/IntrinsicFunctions").If | import("../../aws/CloudFormation/IntrinsicFunctions").ImportValue | import("../../aws/CloudFormation/IntrinsicFunctions").Join | import("../../aws/CloudFormation/IntrinsicFunctions").Length | import("../../aws/CloudFormation/IntrinsicFunctions").Ref | import("../../aws/CloudFormation/IntrinsicFunctions").Select | import("../../aws/CloudFormation/IntrinsicFunctions").Split | import("../../aws/CloudFormation/IntrinsicFunctions").Sub | import("../../aws/CloudFormation/IntrinsicFunctions/Transform").Transform | import("../../aws/CloudFormation/PolicyDocument").IamPolicyDocument)[] | (import("../../aws/Arn").Arn | import("../../aws/IamRoleName").IamRoleName | import("../../aws/CloudFormation/IntrinsicFunctions").Cidr | import("../../aws/CloudFormation/IntrinsicFunctions").Base64 | import("../../aws/CloudFormation/IntrinsicFunctions").And | import("../../aws/CloudFormation/IntrinsicFunctions").Equals | import("../../aws/CloudFormation/IntrinsicFunctions").Not | import("../../aws/CloudFormation/IntrinsicFunctions").Or | import("../../aws/CloudFormation/IntrinsicFunctions").FindInMap | import("../../aws/CloudFormation/IntrinsicFunctions").GetAtt | import("../../aws/CloudFormation/IntrinsicFunctions").GetAZs | import("../../aws/CloudFormation/IntrinsicFunctions").If | import("../../aws/CloudFormation/IntrinsicFunctions").ImportValue | import("../../aws/CloudFormation/IntrinsicFunctions").Join | import("../../aws/CloudFormation/IntrinsicFunctions").Length | import("../../aws/CloudFormation/IntrinsicFunctions").Ref | import("../../aws/CloudFormation/IntrinsicFunctions").Select | import("../../aws/CloudFormation/IntrinsicFunctions").Split | import("../../aws/CloudFormation/IntrinsicFunctions").Sub | import("../../aws/CloudFormation/IntrinsicFunctions/Transform").Transform | import("../../aws/CloudFormation/PolicyDocument").IamPolicyDocument | (import("../../aws/Arn").Arn | import("../../aws/IamRoleName").IamRoleName | import("../../aws/CloudFormation/IntrinsicFunctions").Cidr | import("../../aws/CloudFormation/IntrinsicFunctions").Base64 | import("../../aws/CloudFormation/IntrinsicFunctions").And | import("../../aws/CloudFormation/IntrinsicFunctions").Equals | import("../../aws/CloudFormation/IntrinsicFunctions").Not | import("../../aws/CloudFormation/IntrinsicFunctions").Or | import("../../aws/CloudFormation/IntrinsicFunctions").FindInMap | import("../../aws/CloudFormation/IntrinsicFunctions").GetAtt | import("../../aws/CloudFormation/IntrinsicFunctions").GetAZs | import("../../aws/CloudFormation/IntrinsicFunctions").If | import("../../aws/CloudFormation/IntrinsicFunctions").ImportValue | import("../../aws/CloudFormation/IntrinsicFunctions").Join | import("../../aws/CloudFormation/IntrinsicFunctions").Length | import("../../aws/CloudFormation/IntrinsicFunctions").Ref | import("../../aws/CloudFormation/IntrinsicFunctions").Select | import("../../aws/CloudFormation/IntrinsicFunctions").Split | import("../../aws/CloudFormation/IntrinsicFunctions").Sub | import("../../aws/CloudFormation/IntrinsicFunctions/Transform").Transform | import("../../aws/CloudFormation/PolicyDocument").IamPolicyDocument)[])[] | undefined;
description: string | undefined;
name: string;
id: import("./ResourceId").ResourceId;
}>;
interface Requirements {
vCPU: PositiveOrZero;
memory: PositiveOrZero;
}
interface VpcConfig {
vpcId: NonEmptyString;
securityGroupIds?: SecurityGroupId[];
subnetIds: SubnetId[];
}
interface Scaling {
instances: PositiveOrZero;
}
interface Image {
name: NonEmptyString;
healthCheckPath: RootedPath;
uri: NonEmptyString;
port: NaturalNumber;
}
export {};