61 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /*
 | |
| *               dotfiles - rendering.d.ts
 | |
| *
 | |
| *   Created by Janis Hutz 03/22/2025, Licensed under the GPL V3 License
 | |
| *           https://janishutz.com, development@janishutz.com
 | |
| *
 | |
| *
 | |
| */
 | |
| 
 | |
| export interface UIComponent {
 | |
|     /**
 | |
|      * The title of the component (like a category name), shown above small divider line
 | |
|      */
 | |
|     title: string;
 | |
| 
 | |
|     /**
 | |
|      * ResultElement list, made up of all elements that should be shown
 | |
|      */
 | |
|     elements: ResultElement[];
 | |
| 
 | |
|     /**
 | |
|      * Choose how many elements to show before truncating (will expand when command is run)
 | |
|      */
 | |
|     truncate: number;
 | |
| 
 | |
|     /**
 | |
|      * The weight of the element (determines order)
 | |
|      */
 | |
|     weight: number;
 | |
| }
 | |
| 
 | |
| 
 | |
| export interface ResultElement {
 | |
|     /**
 | |
|      * The name of the result element
 | |
|      */
 | |
|     name: string;
 | |
| 
 | |
|     /**
 | |
|      * Path to the image to be displayed in the UI
 | |
|      */
 | |
|     img: string;
 | |
| 
 | |
|     /**
 | |
|      * The weight of the element (determines order)
 | |
|      */
 | |
|     weight: number;
 | |
| 
 | |
|     /**
 | |
|      * The action to be executed
 | |
|      */
 | |
|     action: Action;
 | |
| 
 | |
|     /**
 | |
|      * The font size of the text (optional)
 | |
|      */
 | |
|     fontSize: number | undefined;
 | |
| }
 | |
| 
 | |
| type Action = '' | null;
 |