`EditorSuggest` produces two outputs after a single input?

I want to implement a feature where EditorSuggest produces two outputs after a single input:

  1. Immediately after input, output fastSuggestion.
  2. After a delay, output GPTSuggestion.

However, the current issue is that a single input only triggers onTrigger once, and getSuggestions is called only once. Therefore, I’m unable to render twice.

you can call

onTrigger(cursor: EditorPosition, editor: Editor, file: TFile | null) {
  setTimeout(() => {
    // save some flag to distinguish if it's a gpt trigger, you gonna check this flag in `getSuggestion()`
    this.trigger(editor, file, false);
  }, SOME_GPT_TIMEOUT); // or use `Promise` instead of `setTimeout`
}