swc_typescript/fast_dts/util/
types.rs

1use swc_common::DUMMY_SP;
2use swc_ecma_ast::{TsKeywordType, TsKeywordTypeKind, TsLit, TsLitType, TsType, TsTypeAnn};
3
4pub fn any_type_ann() -> Box<TsTypeAnn> {
5    type_ann(ts_keyword_type(TsKeywordTypeKind::TsAnyKeyword))
6}
7
8pub fn type_ann(ts_type: Box<TsType>) -> Box<TsTypeAnn> {
9    Box::new(TsTypeAnn {
10        span: DUMMY_SP,
11        type_ann: ts_type,
12    })
13}
14
15pub fn ts_keyword_type(kind: TsKeywordTypeKind) -> Box<TsType> {
16    Box::new(TsType::TsKeywordType(TsKeywordType {
17        span: DUMMY_SP,
18        kind,
19    }))
20}
21
22pub fn ts_lit_type(lit: TsLit) -> Box<TsType> {
23    Box::new(TsType::TsLitType(TsLitType {
24        span: DUMMY_SP,
25        lit,
26    }))
27}