/// <reference types="node" />
import { PublicKey, Connection } from '@solana/web3.js';
import * as types from '../types';
export interface TickArrayStateFields {
    poolId: PublicKey;
    startTickIndex: number;
    ticks: Array<types.TickStateFields>;
    initializedTickCount: number;
    padding: Array<number>;
}
export interface TickArrayStateJSON {
    poolId: string;
    startTickIndex: number;
    ticks: Array<types.TickStateJSON>;
    initializedTickCount: number;
    padding: Array<number>;
}
export declare class TickArrayState {
    readonly poolId: PublicKey;
    readonly startTickIndex: number;
    readonly ticks: Array<types.TickState>;
    readonly initializedTickCount: number;
    readonly padding: Array<number>;
    static readonly discriminator: Buffer;
    static readonly layout: any;
    constructor(fields: TickArrayStateFields);
    static fetch(c: Connection, address: PublicKey): Promise<TickArrayState | null>;
    static fetchMultiple(c: Connection, addresses: PublicKey[]): Promise<Array<TickArrayState | null>>;
    static decode(data: Buffer): TickArrayState;
    toJSON(): TickArrayStateJSON;
    static fromJSON(obj: TickArrayStateJSON): TickArrayState;
}
