@make-software/csprclick-core-types
Version:
Typescript definitions for CSPR.click core packages
70 lines (69 loc) • 2.13 kB
TypeScript
import { Deploy, TransactionV1 } from 'casper-js-sdk';
export declare enum MetamaskConnectionStatusEvent {
ConnectingToSite = "connecting-to-site",
UserDeniedConnection = "connected",
LoadingAccountsList = "loading-accounts-list",
AccountListUpdated = "account-list-updated",
ErrorWhileConnecting = "error-while-connecting",
RejectedByUser = "rejected-by-user",
SignatureRequestedFromUser = "signature-requested-from-user",
SignatureCompleted = "signature-completed",
SignatureFailed = "signature-failed",
SignatureRejected = "signature-rejected",
MsgSignatureCompleted = "msg-signature-completed",
MsgSignatureCanceled = "msg-signature-cancelled",
MsgSignatureFailed = "msg-signature-failed"
}
export type MetamaskSnapConnectOptions = {
acctIdx: number;
getAccountList: boolean;
listSize: number;
listOffset: number;
};
export type GetSnapCasperAccount = {
publicKey: string;
error: string;
};
export type MetamaskProxy = {
isUnlocked: () => Promise<boolean>;
};
export type MetamaskSnapProvider = {
isMetaMask: boolean;
request(param: {
method: string;
params?: any;
}): Promise<unknown>;
_metamask: MetamaskProxy;
};
export declare enum MetamaskEventTypes {
Connected = "metamasksnap:connected",
ActiveKeyChanged = "metamasksnap:activeKeyChanged",
Disconnected = "metamasksnap:disconnected",
AccountChanged = "metamasksnap:accountChanged"
}
export declare const MetamaskSnapProviderEvents: MetamaskEventTypes[];
export type Snap = {
permissionName: string;
id: string;
version: string;
initialPermissions: Record<string, unknown>;
};
export type GetSnapsResponse = Record<string, Snap>;
export type DeployResponse = {
deploy: Deploy;
};
export type GetSnapCasperSign = {
deploy: DeployResponse;
transaction: TransactionV1;
error: string;
};
export type GetSnapCasperSignMessage = {
signature: string;
error: string;
};
export declare const SNAP_ID = "npm:casper-manager";
declare global {
interface Window {
ethereum?: MetamaskSnapProvider;
}
}