11import { QuasarIconSet } from "./extras/icon-set" ;
2- import { HasCapacitor , HasCordova , HasElectron , HasSsr , HasBex } from './feature-flag'
2+ import {
3+ HasCapacitor ,
4+ HasCordova ,
5+ HasElectron ,
6+ HasSsr ,
7+ HasBex ,
8+ } from "./feature-flag" ;
39import { QuasarLanguage } from "./lang" ;
410
511// We cannot reference directly Capacitor/Cordova/Electron types
@@ -20,14 +26,24 @@ export interface GlobalQuasarLanguage extends QuasarLanguage {
2026 getLocale ( ) : string | undefined ;
2127}
2228
23- export interface GlobalQuasarIconSet extends QuasarIconSet {
24- set ( iconSet : QuasarIconSet ) : void ;
25- }
29+ export interface GlobalQuasarIconSet
30+ extends QuasarIconSet ,
31+ HasSsr <
32+ // QSsrContext interface depends on q/app, making it available into UI package adds complexity without any real benefit
33+ { set ( iconSet : QuasarIconSet , ssrContext : any ) : void } ,
34+ { set ( iconSet : QuasarIconSet ) : void }
35+ > { }
2636
2737type GlobalQuasarIconMapFn = (
2838 iconName : string
2939) => { icon : string } | { cls : string ; content ?: string } | void ;
3040
41+ export interface BaseQGlobals {
42+ version : string ;
43+ lang : GlobalQuasarLanguage ;
44+ iconSet : GlobalQuasarIconSet ;
45+ }
46+
3147export interface QVueGlobals
3248 extends HasCapacitor < { capacitor : any } > ,
3349 HasBex < { bex : GlobalsTypesHolder [ "bex" ] } > ,
@@ -36,8 +52,5 @@ export interface QVueGlobals
3652 HasSsr <
3753 { iconMapFn ?: GlobalQuasarIconMapFn } ,
3854 { iconMapFn : GlobalQuasarIconMapFn }
39- > {
40- version : string ;
41- lang : GlobalQuasarLanguage ;
42- iconSet : GlobalQuasarIconSet ;
43- }
55+ > ,
56+ BaseQGlobals { }
0 commit comments