import { grpc } from "@improbable-eng/grpc-web"; import _m0 from "protobufjs/minimal"; import { ChainID } from "../../publicrpc/v1/publicrpc"; import { Observable } from "rxjs"; import { SignedVAAWithQuorum, SignedBatchVAAWithQuorum } from "../../gossip/v1/gossip"; export declare const protobufPackage = "spy.v1"; /** A MessageFilter represents an exact match for an emitter. */ export interface EmitterFilter { /** Source chain */ chainId: ChainID; /** Hex-encoded (without leading 0x) emitter address. */ emitterAddress: string; } export interface BatchFilter { /** Source chain */ chainId: ChainID; /** Native transaction identifier bytes. */ txId: Uint8Array; /** Nonce of the messages in the batch. */ nonce: number; } export interface BatchTransactionFilter { /** Source chain */ chainId: ChainID; /** Native transaction identifier bytes. */ txId: Uint8Array; } export interface FilterEntry { emitterFilter: EmitterFilter | undefined; batchFilter: BatchFilter | undefined; batchTransactionFilter: BatchTransactionFilter | undefined; } export interface SubscribeSignedVAARequest { /** * List of filters to apply to the stream (OR). * If empty, all messages are streamed. */ filters: FilterEntry[]; } export interface SubscribeSignedVAAByTypeRequest { /** * List of filters to apply to the stream (OR). * If empty, all messages are streamed. */ filters: FilterEntry[]; } export interface SubscribeSignedVAAResponse { /** Raw VAA bytes */ vaaBytes: Uint8Array; } export interface SubscribeSignedVAAByTypeResponse { signedVaa: SignedVAAWithQuorum | undefined; signedBatchVaa: SignedBatchVAAWithQuorum | undefined; } export declare const EmitterFilter: { encode(message: EmitterFilter, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EmitterFilter; fromJSON(object: any): EmitterFilter; toJSON(message: EmitterFilter): unknown; fromPartial(object: DeepPartial): EmitterFilter; }; export declare const BatchFilter: { encode(message: BatchFilter, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): BatchFilter; fromJSON(object: any): BatchFilter; toJSON(message: BatchFilter): unknown; fromPartial(object: DeepPartial): BatchFilter; }; export declare const BatchTransactionFilter: { encode(message: BatchTransactionFilter, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): BatchTransactionFilter; fromJSON(object: any): BatchTransactionFilter; toJSON(message: BatchTransactionFilter): unknown; fromPartial(object: DeepPartial): BatchTransactionFilter; }; export declare const FilterEntry: { encode(message: FilterEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): FilterEntry; fromJSON(object: any): FilterEntry; toJSON(message: FilterEntry): unknown; fromPartial(object: DeepPartial): FilterEntry; }; export declare const SubscribeSignedVAARequest: { encode(message: SubscribeSignedVAARequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SubscribeSignedVAARequest; fromJSON(object: any): SubscribeSignedVAARequest; toJSON(message: SubscribeSignedVAARequest): unknown; fromPartial(object: DeepPartial): SubscribeSignedVAARequest; }; export declare const SubscribeSignedVAAByTypeRequest: { encode(message: SubscribeSignedVAAByTypeRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SubscribeSignedVAAByTypeRequest; fromJSON(object: any): SubscribeSignedVAAByTypeRequest; toJSON(message: SubscribeSignedVAAByTypeRequest): unknown; fromPartial(object: DeepPartial): SubscribeSignedVAAByTypeRequest; }; export declare const SubscribeSignedVAAResponse: { encode(message: SubscribeSignedVAAResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SubscribeSignedVAAResponse; fromJSON(object: any): SubscribeSignedVAAResponse; toJSON(message: SubscribeSignedVAAResponse): unknown; fromPartial(object: DeepPartial): SubscribeSignedVAAResponse; }; export declare const SubscribeSignedVAAByTypeResponse: { encode(message: SubscribeSignedVAAByTypeResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SubscribeSignedVAAByTypeResponse; fromJSON(object: any): SubscribeSignedVAAByTypeResponse; toJSON(message: SubscribeSignedVAAByTypeResponse): unknown; fromPartial(object: DeepPartial): SubscribeSignedVAAByTypeResponse; }; /** SpyRPCService exposes a gossip introspection service, allowing sniffing of gossip messages. */ export interface SpyRPCService { /** SubscribeSignedVAA returns a stream of signed VAA messages received on the network. */ SubscribeSignedVAA(request: DeepPartial, metadata?: grpc.Metadata): Observable; /** SubscribeSignedBatchVAA returns a stream of signed VAA messages, by type, received on the network. */ SubscribeSignedVAAByType(request: DeepPartial, metadata?: grpc.Metadata): Observable; } export declare class SpyRPCServiceClientImpl implements SpyRPCService { private readonly rpc; constructor(rpc: Rpc); SubscribeSignedVAA(request: DeepPartial, metadata?: grpc.Metadata): Observable; SubscribeSignedVAAByType(request: DeepPartial, metadata?: grpc.Metadata): Observable; } export declare const SpyRPCServiceDesc: { serviceName: string; }; export declare const SpyRPCServiceSubscribeSignedVAADesc: UnaryMethodDefinitionish; export declare const SpyRPCServiceSubscribeSignedVAAByTypeDesc: UnaryMethodDefinitionish; interface UnaryMethodDefinitionishR extends grpc.UnaryMethodDefinition { requestStream: any; responseStream: any; } declare type UnaryMethodDefinitionish = UnaryMethodDefinitionishR; interface Rpc { unary(methodDesc: T, request: any, metadata: grpc.Metadata | undefined): Promise; invoke(methodDesc: T, request: any, metadata: grpc.Metadata | undefined): Observable; } export declare class GrpcWebImpl { private host; private options; constructor(host: string, options: { transport?: grpc.TransportFactory; streamingTransport?: grpc.TransportFactory; debug?: boolean; metadata?: grpc.Metadata; }); unary(methodDesc: T, _request: any, metadata: grpc.Metadata | undefined): Promise; invoke(methodDesc: T, _request: any, metadata: grpc.Metadata | undefined): Observable; } declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export declare type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export {};