@minima-global/mds
Version:
Official MDS Typescript Library for Minima. Used for creating minidapps that interact with the Minima Blockchain.
95 lines • 4.38 kB
TypeScript
import type { MDSResponse } from '../../types.js';
import type { MaxContactsAddParams, MaxContactsImportParams, MaxContactsParams, MaxContactsRemoveParams, MaxContactsSearchParams, MaxExtraAddAllowedParams, MaxExtraAllowAllContactsParams, MaxExtraClearAllowedParams, MaxExtraClearPermanentParams, MaxExtraGetAddressParams, MaxExtraListPermanentParams, MaxExtraMLSInfoParams, MaxExtraParams, MaxExtraPermanentParams, MaxExtraStaticMLSParams, MaximaHostsParams, MaximaInfoParams, MaximaParams, MaximaRefreshParams, MaximaSendallParams, MaximaSendParams, MaximaSeticonParams, MaximaSetnameParams, MaxSignParams, MaxVerifyParams } from './params.js';
import type { MaxContactsReturnType, MaxCreate, MaxExtraReturnType, MaximaReturnType, MaxSign, MaxVerify } from './response.js';
/**
* Maxima function types
*/
export type ActionParamMapMaxima = {
readonly info: MaximaInfoParams;
readonly setname: MaximaSetnameParams;
readonly refresh: MaximaRefreshParams;
readonly send: MaximaSendParams;
readonly sendall: MaximaSendallParams;
readonly seticon: MaximaSeticonParams;
readonly hosts: MaximaHostsParams;
};
export type MaximaParamType<A extends MaximaParams | undefined> = A extends {
action: keyof ActionParamMapMaxima;
} ? ActionParamMapMaxima[A['action']] : A;
type MaximaFuncParams<A extends MaximaParams | undefined> = [
{
params: MaximaParamType<A>;
},
MaximaCallback<A>?
];
type MaximaCallback<A> = (data: MaximaReturnType<A>) => void;
export type MaximaFunc = <A extends MaximaParams | undefined>(...args: A extends undefined ? [MaximaCallback<A>?] : MaximaFuncParams<A>) => Promise<MaximaReturnType<A>>;
/**
* MaxContacts function types
*/
export type ActionParamMapContacts = {
readonly add: MaxContactsAddParams;
readonly remove: MaxContactsRemoveParams;
readonly search: MaxContactsSearchParams;
readonly import: MaxContactsImportParams;
readonly export: MaxContactsParams;
readonly list: MaxContactsParams;
};
export type MaxContactsParamType<A extends MaxContactsParams | undefined> = A extends {
action: keyof ActionParamMapContacts;
} ? ActionParamMapContacts[A['action']] : A;
type MaxContactsFuncParams<A extends MaxContactsParams | undefined> = [
{
params: MaxContactsParamType<A>;
},
MaxContactsCallback<A>?
];
type MaxContactsCallback<A> = (data: MaxContactsReturnType<A>) => void;
export type MaxContactsFunc = <A extends MaxContactsParams | undefined>(...args: A extends undefined ? [MaxContactsCallback<A>?] : MaxContactsFuncParams<A>) => Promise<MaxContactsReturnType<A>>;
/**
* MaxCreate function types
*/
type MaxCreateCallback = (data: MDSResponse<MaxCreate>) => void;
export type MaxCreateFunc = (callback?: MaxCreateCallback) => Promise<MDSResponse<MaxCreate>>;
/**
* MaxSign function types
*/
type MaxSignCallback = (data: MDSResponse<MaxSign>) => void;
export type MaxSignFunc = (args: {
params: MaxSignParams;
}, callback?: MaxSignCallback) => Promise<MDSResponse<MaxSign>>;
/**
* MaxExtra function types
*/
export type ActionParamMapExtra = {
readonly staticmls: MaxExtraStaticMLSParams;
readonly addpermanent: MaxExtraPermanentParams;
readonly removepermanent: MaxExtraPermanentParams;
readonly listpermanent: MaxExtraListPermanentParams;
readonly clearpermanent: MaxExtraClearPermanentParams;
readonly allowallcontacts: MaxExtraAllowAllContactsParams;
readonly clearallowed: MaxExtraClearAllowedParams;
readonly mlsinfo: MaxExtraMLSInfoParams;
readonly getaddress: MaxExtraGetAddressParams;
readonly addallowed: MaxExtraAddAllowedParams;
};
export type MaxExtraParamType<A extends MaxExtraParams> = A extends {
action: keyof ActionParamMapExtra;
} ? ActionParamMapExtra[A['action']] : A;
type MaxExtraFuncParams<A extends MaxExtraParams> = [
{
params: MaxExtraParamType<A>;
},
MaxExtraCallback<A>?
];
type MaxExtraCallback<A> = (data: MaxExtraReturnType<A>) => void;
export type MaxExtraFunc = <A extends MaxExtraParams>(...args: MaxExtraFuncParams<A>) => Promise<MaxExtraReturnType<A>>;
/**
* MaxVerify function types
*/
type MaxVerifyCallback = (data: MDSResponse<MaxVerify>) => void;
export type MaxVerifyFunc = (args: {
params: MaxVerifyParams;
}, callback?: MaxVerifyCallback) => Promise<MDSResponse<MaxVerify>>;
export {};
//# sourceMappingURL=functions.d.ts.map