_preWalkVariableDeclaration(statement, hookMap) {
		for (const declarator of statement.declarations) {
			switch (declarator.type) {
				case "VariableDeclarator": {
					this.preWalkVariableDeclarator(declarator);
					if (!this.hooks.preDeclarator.call(declarator, statement)) {
						this.enterPattern(declarator.id, (name, ident) => {
							let hook = hookMap.get(name);
							if (hook === undefined || !hook.call(ident)) {
								hook = this.hooks.varDeclaration.get(name);
								if (hook === undefined || !hook.call(ident)) {
									this.defineVariable(name);
								}
							}
						});
					}
					break;
				}
			}
		}
	}
@param {VariableDeclaration} statement variable declaration
@param {HookMap<SyncBailHook<[Identifier], boolean | void>>} hookMap map of hooks