UNPKG

@altostra/core

Version:

Core library for shared types and logic

27 lines (26 loc) 1.62 kB
import type { AnyTypeValidation, TypeValidation } from '@altostra/type-validations'; import type { Base64 } from "./Base64"; import type { Cidr } from "./Cidr"; import type { ConditionFunction } from "./Conditions/common"; import type { FindInMap } from "./FindInMap"; import type { GetAtt } from "./GetAtt"; import type { GetAZs } from "./GetAZs"; import type { If } from "./If"; import type { ImportValue } from "./ImportValue"; import type { Join } from "./Join"; import type { Length } from "./Length"; import type { Ref } from "./Ref"; import type { Select } from "./Select"; import type { Split } from "./Split"; import type { Sub } from "./Sub"; import type { Transform } from "./Transform"; export declare type IntrinsicFunction = Base64 | Cidr | ConditionFunction | FindInMap | GetAtt | GetAZs | If | ImportValue | Join | Length | Ref | Select | Split | Sub | Transform; export declare type CloudFormationValue<T = string> = IntrinsicFunction | T; export declare type CloudFormationString<T extends string = string> = CloudFormationValue<T>; export declare const isIntrinsicFunc: TypeValidation<IntrinsicFunction>; export declare const isIntristicFunc: TypeValidation<IntrinsicFunction>; export declare function isCloudFormationValue(): TypeValidation<CloudFormationValue<string>>; export declare function isCloudFormationValue<T>(baseValidation: AnyTypeValidation<T>): TypeValidation<CloudFormationValue<T>>; export declare const isCloudFormationString: TypeValidation<CloudFormationValue<string>>; export declare type Numeric = number | string; export declare const isNumeric: TypeValidation<string | number>;