estaminet
Version:
A set of WebComponents building on top of Statemint family of Polkadot parachains
46 lines (45 loc) • 1.58 kB
TypeScript
import { ApiPromise } from "@polkadot/api";
import { UniquesCollectionMediaElement, UniquesItemMediaElement } from "./uniques/media";
export { UniquesCollectionMediaElement, UniquesItemMediaElement } from "./uniques/media";
export declare type Config = {
defaultApi?: ApiPromise;
defaultProviders: Map<string, Provider>;
};
/**
* Abstract away the access to a parachain
*/
interface Provider {
wssURL: string;
}
export declare let config: Config;
export declare function registerDefaultApi(api: ApiPromise): void;
export declare function registerDefaultProviders(providers: Map<string, Provider>): void;
export declare function registerElements(): void;
interface CustomEventMap {
"api-changed": CustomEvent<{
api: ApiPromise | undefined;
}>;
"attribute-changed": CustomEvent<{
name: string;
oldValue: any;
newValue: any;
}>;
}
interface WindowCustomEventMap {
"default-api-changed": CustomEvent<{
api: ApiPromise | undefined;
}>;
}
declare global {
interface HTMLElement {
addEventListener<K extends keyof CustomEventMap>(type: K, listener: (this: Document, ev: CustomEventMap[K]) => void): void;
}
interface HTMLElementTagNameMap {
'es-uniques-collection-media': UniquesCollectionMediaElement;
'es-uniques-item-media': UniquesItemMediaElement;
}
interface Window {
__ESTAMINET_CONFIG__: Config;
addEventListener<K extends keyof WindowCustomEventMap>(type: K, listener: (this: Document, ev: WindowCustomEventMap[K]) => void): void;
}
}