export function debounceable(duration: number, immediate?: boolean) {
  // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
  return (_: any, key: string, descriptor: any): any => {
    return {
      configurable: true,