import { Widget } from 'types/@girs/gtk-3.0/gtk-3.0.cjs'; import GObject from 'types/@girs/gobject-2.0/gobject-2.0'; import { Variable as Var } from 'types/variable'; import { Widget as agsWidget } from 'types/widgets/widget'; export type AgsWidget = agsWidget & Widget; // For ./ts/applauncher/main.ts import { Application } from 'types/service/applications.ts'; import { CursorBoxProps } from 'ts/misc/cursorbox'; export type AgsAppItem = AgsEventBox>; // For ./ts/bar/hovers/keyboard.ts export type Keyboard = { address: string; name: string; rules: string; model: string; layout: string; variant: string; options: string; active_keymap: string; main: boolean; }; // For ./ts/bar/items/workspaces.ts // TODO: improve type export type Workspace = AgsRevealer; // For ./ts/bar/fullscreen.ts export type DefaultProps = RevealerProps; // For ./ts/media-player/gesture.ts export type Gesture = { attribute?: object setup?(self: OverlayGeneric): void props?: OverlayProps }; // For ./ts/media-player/mpris.ts type PlayerDragProps = unknown & { dragging: boolean }; export type PlayerDrag = AgsCenterBox< unknown & Widget, unknown & Widget, unknown & Widget, unknown & PlayerDragProps >; type Colors = { imageAccent: string; buttonAccent: string; buttonText: string; hoverAccent: string; }; // For ./ts/media-player export type PlayerBoxProps = { bgStyle: string, player: MprisPlayer, }; export type PlayerBox = AgsCenterBox< unknown & Widget, unknown & Widget, unknown & Widget, PlayerBoxProps >; export type PlayerOverlay = AgsOverlay; export type PlayerButtonType = { player: MprisPlayer colors: Var children: StackProps['children'] onClick: string prop: string }; // For ./ts/notifications/gesture.js type NotifGestureProps = { dragging: boolean; hovered: boolean ready: boolean id: number; slideAway(side: 'Left' | 'Right'): void; }; export type NotifGesture = AgsEventBox; // For ./ts/osd/ctor.ts export type OSDStack = AgsStack; export type ConnectFunc = (self?: ProgressBarGeneric) => void; export type OSD = { name: string; icon: IconPropsGeneric['icon']; info: { mod: GObject.Object; signal?: string | string[]; logic?(self: ProgressBarGeneric): void; widget?: AgsWidget; } }; // For ./ts/on-screen-keyboard export type OskWindow = Window void; killGestureSigs: () => void; setSlideUp: () => void; setSlideDown: () => void; }>; // For CursorBox import { CursorBox, CursorBoxProps } from 'ts/misc/cursorbox'; export type CursorBox = CursorBox; export type CursorBoxProps = CursorBoxProps; // For PopupWindow export type HyprTransition = 'slide' | 'slide top' | 'slide bottom' | 'slide left' | 'slide right' | 'popin' | 'fade'; export type CloseType = 'none' | 'stay' | 'released' | 'clicked'; import { PopupWindow } from 'ts/misc/popup'; export type PopupWindow = PopupWindow; // For ./ts/quick-settings import { BluetoothDevice as BTDev } from 'types/service/bluetooth.ts'; export type APType = { bssid: string address: string lastSeen: number ssid: string active: boolean strength: number iconName: string }; export type APBox = AgsBox }>; export type DeviceBox = AgsBox; // Generic widgets import AgsBox from 'types/widgets/box.ts'; export type BoxGeneric = AgsBox; import AgsCenterBox, { CenterBoxProps } from 'types/widgets/centerbox'; export type CenterBoxGeneric = AgsCenterBox< unknown & Widget, unknown & Widget, unknown & Widget, unknown >; export type CenterBoxPropsGeneric = CenterBoxProps< unknown & Widget, unknown & Widget, unknown & Widget, unknown >; import AgsEventBox from 'types/widgets/eventbox'; export type EventBoxGeneric = AgsEventBox; import AgsIcon, { IconProps } from 'types/widgets/icon'; export type IconGeneric = AgsIcon; export type IconPropsGeneric = IconProps; import AgsLabel from 'types/widgets/label'; export type LabelGeneric = AgsLabel; import AgsOverlay, { OverlayProps } from 'types/widgets/overlay'; export type OverlayGeneric = AgsOverlay; import AgsProgressBar from 'types/widgets/progressbar'; export type ProgressBarGeneric = AgsProgressBar; import AgsRevealer, { RevealerProps } from 'types/widgets/revealer'; export type RevealerGeneric = AgsRevealer; import AgsStack, { StackProps } from 'types/widgets/stack'; export type StackGeneric = AgsStack<{ [name: string]: Widget; }, unknown>; import AgsScrollable from 'types/widgets/scrollable'; export type ScrollableGeneric = AgsScrollable; import AgsWindow from 'types/widgets/window'; export type WindowGeneric = AgsWindow;