14
14
*/
15
15
export = parser ;
16
16
17
- declare function parser ( ) : parser . Processor ;
18
- declare function parser < Transform extends any > ( processor : parser . SyncProcessor < Transform > ) : parser . Processor < Transform > ;
19
- declare function parser ( processor : parser . SyncProcessor ) : parser . Processor ;
20
- declare function parser < Transform extends any > ( processor : parser . AsyncProcessor < Transform > ) : parser . Processor < Transform , string > ;
21
- declare function parser ( processor : parser . AsyncProcessor ) : parser . Processor < never , string > ;
22
- declare function parser < Transform > ( processor ?: parser . SyncProcessor < Transform > | parser . AsyncProcessor < Transform > ) : parser . Processor < Transform , string > ;
17
+ declare function parser ( ) : parser . Processor < never > ;
18
+ declare function parser < Transform extends any > ( processor : parser . AsyncProcessor < Transform > ) : parser . Processor < Transform , never > ;
19
+ declare function parser ( processor : parser . AsyncProcessor ) : parser . Processor < never > ;
20
+ declare function parser < Transform extends any > ( processor : parser . SyncProcessor < Transform > ) : parser . Processor < Transform , never > ;
21
+ declare function parser ( processor : parser . SyncProcessor ) : parser . Processor < never > ;
22
+ declare function parser < Transform > ( processor ?: parser . SyncProcessor < Transform > | parser . AsyncProcessor < Transform > ) : parser . Processor < Transform > ;
23
23
24
24
/*~ If you want to expose types from your module as well, you can
25
25
*~ place them in this block. Often you will want to describe the
@@ -45,7 +45,7 @@ declare namespace parser {
45
45
/** Accepts a string */
46
46
type Selectors = string | PostCSSRuleNode
47
47
type SyncProcessor < Transform = void > = ( root : parser . Root ) => Transform
48
- type AsyncProcessor < Transform = void > = ( root : parser . Root ) => void | PromiseLike < Transform >
48
+ type AsyncProcessor < Transform = void > = ( root : parser . Root ) => Transform | PromiseLike < Transform >
49
49
50
50
const TAG : "tag" ;
51
51
const STRING : "string" ;
@@ -90,15 +90,18 @@ declare namespace parser {
90
90
*/
91
91
updateSelector : boolean ;
92
92
}
93
- class Processor < TransformType = never , AsyncProcessType extends string | never = never > {
93
+ class Processor <
94
+ TransformType = never ,
95
+ SyncSelectorsType extends Selectors | never = Selectors
96
+ > {
94
97
res : Root ;
95
98
readonly result : String ;
96
99
ast ( selectors : Selectors , options ?: Partial < Options > ) : Promise < Root > ;
97
- astSync ( selectors : Selectors , options ?: Partial < Options > ) : Root ;
100
+ astSync ( selectors : SyncSelectorsType , options ?: Partial < Options > ) : Root ;
98
101
transform ( selectors : Selectors , options ?: Partial < Options > ) : Promise < TransformType > ;
99
- transformSync ( selectors : Selectors , options ?: Partial < Options > ) : TransformType ;
100
- process ( selectors : Selectors , options ?: Partial < Options > ) : Promise < AsyncProcessType > ;
101
- processSync ( selectors : Selectors , options ?: Partial < Options > ) : string ;
102
+ transformSync ( selectors : SyncSelectorsType , options ?: Partial < Options > ) : TransformType ;
103
+ process ( selectors : Selectors , options ?: Partial < Options > ) : Promise < string > ;
104
+ processSync ( selectors : SyncSelectorsType , options ?: Partial < Options > ) : string ;
102
105
}
103
106
interface ParserOptions {
104
107
css : string ;
0 commit comments