Schedules func to be run after the debounce timeoutMillis or when maxWaitMillis has elapsed isLastEmit denotes if the func is running after the delay