@ylide/everscale
Version:
Ylide Protocol SDK implementation for EverScale blockchain
88 lines (87 loc) • 3.82 kB
TypeScript
import { Uint256 } from '@ylide/sdk';
import { Address, Contract, ProviderRpcClient } from 'everscale-inpage-provider';
export declare class MailerContract {
private readonly ever;
readonly contractAddress: string;
readonly contract: Contract<typeof MAILER_ABI>;
constructor(ever: ProviderRpcClient, contractAddress: string);
buildHash(pubkey: Uint8Array, uniqueId: number, time: number): Promise<Uint256>;
setFees(address: string, _contentPartFee: number, _recipientFee: number): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
transferOwnership(address: string, newOwner: string): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
setBeneficiary(address: string, _beneficiary: string): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
addRecipients(address: string, uniqueId: number, initTime: number, recipients: Uint256[], keys: Uint8Array[]): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
sendMultipartMailPart(address: string, uniqueId: number, initTime: number, parts: number, partIdx: number, content: Uint8Array): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
broadcastMail(address: string, uniqueId: number, content: Uint8Array): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
broadcastMailHeader(address: string, uniqueId: number, initTime: number): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
sendSmallMail(address: string, uniqueId: number, recipient: string, key: Uint8Array, content: Uint8Array): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
sendBulkMail(address: string, uniqueId: number, recipients: Uint256[], keys: Uint8Array[], content: Uint8Array): Promise<{
parentTransaction: import("everscale-inpage-provider").Transaction<Address>;
childTransaction: import("everscale-inpage-provider").Transaction<Address>;
output?: undefined;
}>;
}
export declare const MAILER_ABI: {
'ABI version': number;
version: string;
header: string[];
functions: {
name: string;
inputs: {
name: string;
type: string;
}[];
outputs: {
name: string;
type: string;
}[];
}[];
data: {
key: number;
name: string;
type: string;
}[];
events: {
name: string;
inputs: {
name: string;
type: string;
}[];
outputs: never[];
}[];
fields: {
name: string;
type: string;
}[];
};