Skip to content

Commit 8dc23af

Browse files
authored
fix: add explicit function return types (#12)
1 parent 6ed381e commit 8dc23af

File tree

3 files changed

+23
-7
lines changed

3 files changed

+23
-7
lines changed

package.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,12 @@
7070
"eslintConfig": {
7171
"extends": [
7272
"lunde"
73-
]
73+
],
74+
"rules": {
75+
"@typescript-eslint/explicit-function-return-type": [
76+
"warn"
77+
]
78+
}
7479
},
7580
"eslintIgnore": [
7681
"node_modules",

src/index.ts

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,10 @@ function mq<
1717
Tokens extends DashTokens = DashTokens,
1818
Themes extends DashThemes = DashThemes,
1919
QueryNames extends string | number = string | number
20-
>(styles: Styles<Tokens, Themes>, mediaQueries: MediaQueries<QueryNames>) {
20+
>(
21+
styles: Styles<Tokens, Themes>,
22+
mediaQueries: MediaQueries<QueryNames>
23+
): MqStyles<QueryNames, Tokens, Themes> {
2124
const mediaQueryNames = Object.keys(
2225
mediaQueries
2326
) as unknown as (keyof MediaQueries<QueryNames>)[];
@@ -32,10 +35,6 @@ function mq<
3235
* When an object, it is used the same way as the `styles` instance
3336
* is, allowing you to define styles specific to given media queries.
3437
*/
35-
function mqStyles(queryName: QueryNames): string;
36-
function mqStyles(
37-
queryName: MediaQueryObject<QueryNames, Tokens, Themes>
38-
): string;
3938
function mqStyles(
4039
queryName: QueryNames | MediaQueryObject<QueryNames, Tokens, Themes>
4140
): string {
@@ -69,6 +68,18 @@ function mq<
6968

7069
export default mq;
7170

71+
export type MqStyles<
72+
QueryNames extends string | number,
73+
Tokens extends DashTokens = DashTokens,
74+
Themes extends DashThemes = DashThemes
75+
> = {
76+
(queryName: QueryNames): string;
77+
(queryName: MediaQueryObject<QueryNames, Tokens, Themes>): string;
78+
(
79+
queryName: QueryNames | MediaQueryObject<QueryNames, Tokens, Themes>
80+
): string;
81+
};
82+
7283
export type MediaQueries<QueryNames extends string | number> = {
7384
readonly [K in QueryNames]: string;
7485
};

0 commit comments

Comments
 (0)