3 autoloader="test/bootstrap-static.php"
5 reportMixedIssues="true"
7 resolveFromConfigFile="true"
8 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9 xmlns="https://getpsalm.org/schema/config"
10 xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"
11 errorBaseline="psalm-baseline.xml"
14 <directory name="libraries"/>
15 <directory name="setup"/>
16 <directory name="test/classes"/>
17 <directory name="test/selenium"/>
18 <file name="js/messages.php"/>
19 <file name="index.php"/>
20 <file name="show_config_errors.php"/>
21 <file name="url.php"/>
23 <directory name="vendor"/>
24 <directory name="libraries/cache"/>
29 <pluginClass class="Psalm\PhpUnitPlugin\Plugin"/>
33 <var name="cfg" type="array{
34 AllowUserDropDatabase: bool,
35 blowfish_secret: string,
39 CookieSameSite: 'Lax'|'Strict'|'None',
41 DBG: array{sql: bool, sqllog: bool, demo: bool, simple2fa: bool},
42 DefaultTabDatabase: 'structure'|'sql'|'search'|'operations',
43 DefaultTabServer: 'welcome'|'databases'|'status'|'variables'|'privileges',
44 DefaultTabTable: 'structure'|'sql'|'search'|'insert'|'browse',
45 DisableMultiTableMaintenance: bool,
46 enable_drag_drop_import: bool,
47 EnableAutocompleteForTablesAndColumns: bool,
48 environment: 'production'|'development',
49 ExecTimeLimit: 0|positive-int,
51 FirstLevelNavigationItems: positive-int,
52 GridEditing: 'double-click'|'click'|'disabled',
54 IgnoreMultiSubmitErrors: bool,
55 InitialSlidersState: 'open'|'closed'|'disabled',
56 LimitChars: positive-int,
57 LoginCookieStore: 0|positive-int,
58 LoginCookieValidity: positive-int,
59 LoginCookieValidityDisableWarning: bool,
60 MaxDbList: positive-int,
61 MaxCharactersInDisplayedSQL: positive-int,
62 MaxRows: positive-int,
63 MaxTableList: positive-int,
65 NavigationDisplayLogo: bool,
66 NavigationDisplayServers: bool,
67 NavigationLinkWithMainPanel: bool,
68 NavigationLogoLink: string,
69 NavigationLogoLinkWindow: 'main'|'new',
70 NavigationTreeAutoexpandSingleDb: bool,
71 NavigationTreeDbSeparator: string,
72 NavigationTreeEnableGrouping: bool,
73 NavigationTreePointerEnable: bool,
74 NavigationTreeTableSeparator: string|string[]|false,
75 NavigationWidth: 0|positive-int,
76 NumFavoriteTables: 0|positive-int,
77 PmaNoRelation_DisableWarning: bool,
78 ProtectBinary: 'blob'|'noblob'|'all'|false,
82 RepeatCells: 0|positive-int,
83 SendErrorReports: 'ask'|'always'|'never',
85 AllowDeny: array{order: ''|'deny,allow'|'allow,deny'|'explicit', rules: string[]},
86 AllowNoPassword: bool,
88 auth_type: 'config'|'http'|'signon'|'cookie',
96 tracking_default_statements: string,
100 ServerDefault: 0|positive-int,
103 ShowChgPassword: bool,
105 ShowDatabasesNavigationAsTree: bool,
106 ShowFieldTypesInDataEditView: bool,
107 ShowFunctionFields: bool,
109 ShowServerInfo: bool,
112 SkipLockedTables: bool,
113 SuhosinDisableWarning: bool,
115 TranslationWarningThreshold: int,
121 <var name="containerBuilder" type="Symfony\Component\DependencyInjection\ContainerBuilder"/>
122 <var name="dbi" type="PhpMyAdmin\DatabaseInterface"/>
123 <var name="GLOBALS" type="array{
126 cached_affected_rows: int|numeric-string,
128 AllowArbitraryServer: bool,
129 AllowThirdPartyFraming: bool|'sameorigin',
130 ArbitraryServerRegexp: string,
131 AvailableCharsets: string[],
132 BrowseMarkerEnable: bool,
133 BrowsePointerEnable: bool,
137 CaptchaLoginPublicKey: string,
138 CaptchaRequestParam: string,
139 CaptchaResponseParam: string,
140 CharEditing: 'input'|'textarea',
141 CharTextareaCols: positive-int,
142 CharTextareaRows: positive-int,
143 CodemirrorEnable: bool,
146 ConsoleEnterExecutes: bool,
147 DBG: array{sql: bool, sqllog: bool, demo: bool, simple2fa: bool},
148 DefaultForeignKeyChecks: 'default'|'enable'|'disable',
149 DefaultQueryDatabase: string,
150 DefaultQueryTable: string,
151 DefaultTabDatabase: 'structure'|'sql'|'search'|'operations',
152 DefaultTabServer: 'welcome'|'databases'|'status'|'variables'|'privileges',
153 DefaultTabTable: 'structure'|'sql'|'search'|'insert'|'browse',
154 DefaultTransformations: array{
155 Bool2Text: array{string, string},
156 DateFormat: array{0|positive-int, string, 'local'|'utc'},
157 External: array{int, string, int, int},
158 Hex: array{0|positive-int},
159 Inline: array{0: 0|positive-int, 1: 0|positive-int, wrapper_link: string|null, wrapper_params: array<array-key, string>},
160 PreApPend: array{string, string},
161 Substring: array{0|positive-int, 'all'|int, string},
162 TextImageLink: array{string|null, 0|positive-int, 0|positive-int},
163 TextLink: array{string|null, string|null, bool|null}
165 DisableMultiTableMaintenance: bool,
166 DisplayServersList: bool,
167 enable_drag_drop_import: bool,
168 ExecTimeLimit: 0|positive-int,
169 FirstLevelNavigationItems: positive-int,
170 ForeignKeyDropdownOrder: array{0: 'content-id'|'id-content', 1?: 'content-id'|'id-content'},
171 ForeignKeyMaxLimit: positive-int,
172 GridEditing: 'double-click'|'click'|'disabled',
174 HideStructureActions: bool,
175 IgnoreMultiSubmitErrors: bool,
177 InitialSlidersState: 'open'|'closed'|'disabled',
178 InsertRows: positive-int,
179 LimitChars: positive-int,
180 LinkLengthLimit: positive-int,
182 LoginCookieDeleteAll: bool,
183 LoginCookieRecall: bool,
184 LoginCookieStore: 0|positive-int,
185 LoginCookieValidity: positive-int,
186 LongtextDoubleTextarea: bool,
187 MaxDbList: positive-int,
188 MaxCharactersInDisplayedSQL: positive-int,
189 MaxExactCount: positive-int,
190 MaxExactCountViews: 0|positive-int,
191 MaxNavigationItems: positive-int,
192 MaxTableList: positive-int,
193 maxRowPlotLimit: positive-int,
194 MaxRows: positive-int,
195 MaxSizeForInputField: positive-int,
196 MinSizeForInputField: 0|positive-int,
197 MysqlMinVersion: array{internal: int, human: string},
198 MysqlSslWarningSafeHosts: string[],
200 NavigationLinkWithMainPanel: bool,
201 NavigationTreeDbSeparator: string,
202 NavigationTreeDefaultTabTable: 'structure'|'sql'|'search'|'insert'|'browse',
203 NavigationTreeDefaultTabTable2: 'structure'|'sql'|'search'|'insert'|'browse'|'',
204 NavigationTreeDisplayDbFilterMinimum: positive-int,
205 NavigationTreeDisplayItemFilterMinimum: positive-int,
206 NavigationTreeEnableExpansion: bool,
207 NavigationTreeEnableGrouping: bool,
208 NavigationTreeShowEvents: bool,
209 NavigationTreeShowFunctions: bool,
210 NavigationTreeShowProcedures: bool,
211 NavigationTreeShowTables: bool,
212 NavigationTreeShowViews: bool,
213 NavigationTreeTableLevel: positive-int,
214 NavigationTreeTableSeparator: string|string[]|false,
215 NumFavoriteTables: 0|positive-int,
216 NumRecentTables: 0|positive-int,
218 PDFDefaultPageSize: string,
219 PDFPageSizes: string[],
220 PersistentConnections: bool,
221 PropertiesNumColumns: positive-int,
222 ProtectBinary: 'blob'|'noblob'|'all'|false,
223 QueryHistoryDB: bool,
224 QueryHistoryMax: positive-int,
225 RelationalDisplay: 'K'|'D',
226 RememberSorting: bool,
227 RepeatCells: 0|positive-int,
228 ReservedWordDisableWarning: bool,
229 RetainQueryBox: bool,
230 RowActionLinks: 'left'|'right'|'both'|'none',
231 RowActionLinksWithoutUnique: bool,
232 SaveCellsAtOnce: bool,
233 SendErrorReports: 'ask'|'always'|'never',
235 auth_type: 'config'|'http'|'signon'|'cookie',
236 bookmarktable: string|false,
237 central_columns: string|false,
238 column_info: string|false,
239 designer_settings: string|false,
241 export_templates: string|false,
242 favorite: string|false,
243 history: string|false,
245 MaxTableUiprefs: positive-int,
246 navigationhiding: string|false,
247 only_db: string|string[],
249 pdf_pages: string|false,
252 recent: string|false,
253 relation: string|false,
254 savedsearches: string|false,
255 SessionTimeZone: string,
256 SignonCookieParams: array{lifetime: 0|positive-int, path: string, domain: string, secure: bool, httponly: bool, samesite?: 'Lax'|'Strict'},
257 SignonScript: string,
258 SignonSession: string,
260 table_coords: string|false,
261 table_info: string|false,
262 table_uiprefs: string|false,
263 tracking: string|false,
264 tracking_add_drop_database: bool,
265 tracking_add_drop_table: bool,
266 tracking_add_drop_view: bool,
267 tracking_default_statements: string,
268 tracking_version_auto_create: bool,
270 userconfig: string|false,
271 usergroups: string|false,
275 ServerDefault: 0|positive-int,
278 ShowBrowseComments: bool,
279 ShowColumnComments: bool,
281 ShowDatabasesNavigationAsTree: bool,
282 ShowDbStructureCharset: bool,
283 ShowDbStructureComment: bool,
284 ShowDbStructureCreation: bool,
285 ShowDbStructureLastCheck: bool,
286 ShowDbStructureLastUpdate: bool,
287 ShowFieldTypesInDataEditView: bool,
288 ShowFunctionFields: bool,
290 ShowPropertyComments: bool,
293 TextareaAutoSelect: bool,
294 TextareaCols: positive-int,
295 TextareaRows: positive-int,
296 ThemeDefault: string,
297 ThemePerServer: bool,
298 TitleDatabase: string,
299 TitleDefault: string,
302 UserprefsDeveloperTab: bool,
303 UserprefsDisallow: string[],
309 charset_connection: string,
312 collation_connection: string,
313 complete_query: string,
314 compression: 'none'|'zip'|'gzip',
316 config: PhpMyAdmin\Config,
317 ConfigFile: PhpMyAdmin\Config\ConfigFile,
320 csv_enclosed: string,
322 csv_separator: string,
323 csv_terminated: string,
326 dbi: PhpMyAdmin\DatabaseInterface,
327 dbs_to_test: string[]|false,
328 dblist: PhpMyAdmin\Database\DatabaseList,
329 display_query: string,
332 error_message: string,
333 errorHandler: PhpMyAdmin\ErrorHandler,
334 excel_edition: 'win'|'mac_excel2003'|'mac_excel2008',
335 file_handle: resource|null,
341 import_file_name: string,
342 import_run_buffer: array,
344 is_create_db_priv: bool,
345 is_reload_priv: bool,
348 latex_data_caption: string,
349 latex_data_continued_caption: string,
350 latex_data_label: string,
352 latex_structure_caption: string,
353 latex_structure_continued_caption: string,
354 latex_structure_label: string,
357 message: PhpMyAdmin\Message,
362 onfly_compression: bool,
363 output_charset_conversion: bool,
364 output_kanji_conversion: bool,
365 plugin_param: string|array{export_type: string, single_table: bool},
366 plugin_scripts: string[],
367 pma_auth_server: string,
368 PMA_PHP_SELF: string,
370 querytime: float|int,
372 save_on_server: bool,
375 showtable: array<string, string|null>,
376 sql_compatibility: 'NONE'|'ANSI'|'DB2'|'MAXDB'|'MYSQL323'|'MYSQL40'|'MSSQL'|'ORACLE'|'TRADITIONAL',
377 sql_constraints: string,
378 sql_constraints_query: string,
379 sql_drop_foreign_keys: string,
380 sql_if_not_exists: bool,
382 sql_insert_syntax: 'complete'|'extended'|'both'|'none',
383 sql_max_query_size: 0|positive-int,
385 sql_structure_or_data: 'structure'|'data'|'structure_and_data',
386 sql_type: 'INSERT'|'UPDATE'|'REPLACE',
389 tbl_storage_engine: string,
391 token_mismatch: bool,
392 token_provided: bool,
395 xml_export_triggers: bool,
396 xml_export_views: bool
398 <var name="PMA_PHP_SELF" type="string"/>