Files
InfiniteAPI/src/Types/USync.ts
T
2025-05-06 12:10:19 -03:00

28 lines
641 B
TypeScript

import { BinaryNode } from '../WABinary'
import { USyncUser } from '../WAUSync'
/**
* Defines the interface for a USyncQuery protocol
*/
export interface USyncQueryProtocol {
/**
* The name of the protocol
*/
name: string
/**
* Defines what goes inside the query part of a USyncQuery
*/
getQueryElement: () => BinaryNode
/**
* Defines what goes inside the user part of a USyncQuery
*/
getUserElement: (user: USyncUser) => BinaryNode | null
/**
* Parse the result of the query
* @param data Data from the result
* @returns Whatever the protocol is supposed to return
*/
parser: (data: BinaryNode) => unknown
}