/ src / messages.ts
messages.ts
 1  import type { Message } from './query.js'
 2  
 3  let getMessages: () => Message[] = () => []
 4  let setMessages: React.Dispatch<React.SetStateAction<Message[]>> = () => {}
 5  
 6  export function setMessagesGetter(getter: () => Message[]) {
 7    getMessages = getter
 8  }
 9  
10  export function getMessagesGetter(): () => Message[] {
11    return getMessages
12  }
13  
14  export function setMessagesSetter(
15    setter: React.Dispatch<React.SetStateAction<Message[]>>,
16  ) {
17    setMessages = setter
18  }
19  
20  export function getMessagesSetter(): React.Dispatch<
21    React.SetStateAction<Message[]>
22  > {
23    return setMessages
24  }