23 lines
731 B
TypeScript
23 lines
731 B
TypeScript
// Copyright 2019-2025 @polkadot/extension-base authors & contributors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
import type { InjectedMetadata, InjectedMetadataKnown, MetadataDef } from '@polkadot/extension-inject/types';
|
|
import type { SendRequest } from './types.js';
|
|
|
|
// External to class, this.# is not private enough (yet)
|
|
let sendRequest: SendRequest;
|
|
|
|
export default class Metadata implements InjectedMetadata {
|
|
constructor (_sendRequest: SendRequest) {
|
|
sendRequest = _sendRequest;
|
|
}
|
|
|
|
public get (): Promise<InjectedMetadataKnown[]> {
|
|
return sendRequest('pub(metadata.list)');
|
|
}
|
|
|
|
public provide (definition: MetadataDef): Promise<boolean> {
|
|
return sendRequest('pub(metadata.provide)', definition);
|
|
}
|
|
}
|