UNPKG

4.4 kBTypeScriptView Raw
1import { ISignal } from '@phosphor/signaling';
2/**
3 * An object which holds data related to an object's title.
4 *
5 * #### Notes
6 * A title object is intended to hold the data necessary to display a
7 * header for a particular object. A common example is the `TabPanel`,
8 * which uses the widget title to populate the tab for a child widget.
9 */
10export declare class Title<T> {
11 /**
12 * Construct a new title.
13 *
14 * @param options - The options for initializing the title.
15 */
16 constructor(options: Title.IOptions<T>);
17 /**
18 * A signal emitted when the state of the title changes.
19 */
20 readonly changed: ISignal<this, void>;
21 /**
22 * The object which owns the title.
23 */
24 readonly owner: T;
25 /**
26 * Get the label for the title.
27 *
28 * #### Notes
29 * The default value is an empty string.
30 */
31 /**
32 * Set the label for the title.
33 */
34 label: string;
35 /**
36 * Get the mnemonic index for the title.
37 *
38 * #### Notes
39 * The default value is `-1`.
40 */
41 /**
42 * Set the mnemonic index for the title.
43 */
44 mnemonic: number;
45 /**
46 * @deprecated Use `iconClass` instead.
47 */
48 /**
49 * @deprecated Use `iconClass` instead.
50 */
51 icon: string;
52 /**
53 * Get the icon class name for the title.
54 *
55 * #### Notes
56 * The default value is an empty string.
57 */
58 /**
59 * Set the icon class name for the title.
60 *
61 * #### Notes
62 * Multiple class names can be separated with whitespace.
63 */
64 iconClass: string;
65 /**
66 * Get the icon label for the title.
67 *
68 * #### Notes
69 * The default value is an empty string.
70 */
71 /**
72 * Set the icon label for the title.
73 *
74 * #### Notes
75 * Multiple class names can be separated with whitespace.
76 */
77 iconLabel: string;
78 /**
79 * Get the caption for the title.
80 *
81 * #### Notes
82 * The default value is an empty string.
83 */
84 /**
85 * Set the caption for the title.
86 */
87 caption: string;
88 /**
89 * Get the extra class name for the title.
90 *
91 * #### Notes
92 * The default value is an empty string.
93 */
94 /**
95 * Set the extra class name for the title.
96 *
97 * #### Notes
98 * Multiple class names can be separated with whitespace.
99 */
100 className: string;
101 /**
102 * Get the closable state for the title.
103 *
104 * #### Notes
105 * The default value is `false`.
106 */
107 /**
108 * Set the closable state for the title.
109 *
110 * #### Notes
111 * This controls the presence of a close icon when applicable.
112 */
113 closable: boolean;
114 /**
115 * Get the dataset for the title.
116 *
117 * #### Notes
118 * The default value is an empty dataset.
119 */
120 /**
121 * Set the dataset for the title.
122 *
123 * #### Notes
124 * This controls the data attributes when applicable.
125 */
126 dataset: Title.Dataset;
127 private _label;
128 private _caption;
129 private _mnemonic;
130 private _iconClass;
131 private _iconLabel;
132 private _className;
133 private _closable;
134 private _dataset;
135 private _changed;
136}
137/**
138 * The namespace for the `Title` class statics.
139 */
140export declare namespace Title {
141 /**
142 * A type alias for a simple immutable string dataset.
143 */
144 type Dataset = {
145 readonly [key: string]: string;
146 };
147 /**
148 * An options object for initializing a title.
149 */
150 interface IOptions<T> {
151 /**
152 * The object which owns the title.
153 */
154 owner: T;
155 /**
156 * The label for the title.
157 */
158 label?: string;
159 /**
160 * The mnemonic index for the title.
161 */
162 mnemonic?: number;
163 /**
164 * @deprecated Use `iconClass` instead.
165 */
166 icon?: string;
167 /**
168 * The icon class name for the title.
169 */
170 iconClass?: string;
171 /**
172 * The icon label for the title.
173 */
174 iconLabel?: string;
175 /**
176 * The caption for the title.
177 */
178 caption?: string;
179 /**
180 * The extra class name for the title.
181 */
182 className?: string;
183 /**
184 * The closable state for the title.
185 */
186 closable?: boolean;
187 /**
188 * The dataset for the title.
189 */
190 dataset?: Dataset;
191 }
192}