@walletconnect/types
Version:
Typings for WalletConnect Protocol
32 lines • 1.17 kB
TypeScript
import { SignClientTypes } from "./client";
import { RelayerTypes } from "../core/relayer";
import { IStore } from "../core/store";
export declare namespace ProposalTypes {
interface BaseRequiredNamespace {
chains?: string[];
methods: string[];
events: string[];
}
type RequiredNamespace = BaseRequiredNamespace;
type RequiredNamespaces = Record<string, RequiredNamespace>;
type OptionalNamespaces = Record<string, RequiredNamespace>;
type SessionProperties = Record<string, string>;
type ScopedProperties = Record<string, unknown>;
interface Struct {
id: number;
expiry?: number;
expiryTimestamp: number;
relays: RelayerTypes.ProtocolOptions[];
proposer: {
publicKey: string;
metadata: SignClientTypes.Metadata;
};
requiredNamespaces: RequiredNamespaces;
optionalNamespaces: OptionalNamespaces;
sessionProperties?: SessionProperties;
scopedProperties?: ScopedProperties;
pairingTopic: string;
}
}
export type IProposal = IStore<number, ProposalTypes.Struct>;
//# sourceMappingURL=proposal.d.ts.map