fastmail-masked-email
Version:
A library for creating, deleting, and updating Fastmail masked emails
33 lines (32 loc) • 869 B
TypeScript
import { GetResponseData, SetResponseData } from './response';
/**
* Method calls and responses are represented as arrays of the form:
* [methodName, args, methodCallId]
* See https://jmap.io/spec-core.html#the-invocation-data-type for more information
*/
type Invocation<T> = [methodName: string, args: T, methodCallId: string];
/**
* JMAP request object
*/
export interface JmapRequest {
using: string[];
methodCalls: Invocation<Record<string, any>>[];
createdIds?: Record<string, string>;
}
/**
* JMAP response object
*/
interface JmapResponse<T> {
sessionState: string;
latestClientVersion: string;
methodResponses: Invocation<T>[];
}
/**
* JMAP set/update response
*/
export type JmapSetResponse = JmapResponse<SetResponseData>;
/**
* JMAP get response
*/
export type JmapGetResponse = JmapResponse<GetResponseData>;
export {};