/** * GetProgramAccounts request types and encoder */ import { BaseSolanaRequest, SolanaCommitmentOptions } from '../base'; export interface DataSizeFilter { readonly dataSize: number; } export interface MemcmpFilter { readonly memcmp: { readonly offset: number; readonly bytes: string; }; } export type ProgramAccountFilter = DataSizeFilter | MemcmpFilter; export interface DataSlice { readonly offset: number; readonly length: number; } export interface GetProgramAccountsOptions extends SolanaCommitmentOptions { readonly encoding?: 'base58' | 'base64' | 'base64+zstd' | 'jsonParsed'; readonly dataSlice?: DataSlice; readonly filters?: readonly ProgramAccountFilter[]; readonly withContext?: boolean; readonly minContextSlot?: number; } export interface GetProgramAccountsRequest extends BaseSolanaRequest { readonly programId: string; } export type EncodedGetProgramAccountsRequest = [string, GetProgramAccountsOptions?]; /** * Encode GetProgramAccounts request parameters */ export declare function encodeGetProgramAccountsRequest(params: GetProgramAccountsRequest): EncodedGetProgramAccountsRequest;