///
import * as web3 from '@solana/web3.js';
import * as beet from '@metaplex-foundation/beet';
import * as beetSolana from '@metaplex-foundation/beet-solana';
import { CollectionInfo } from './CollectionInfo';
import { UnlockMethod } from '../types/UnlockMethod';
import { MigrationStatus } from './MigrationStatus';
export type MigrationStateArgs = {
collectionInfo: CollectionInfo;
unlockMethod: UnlockMethod;
status: MigrationStatus;
};
export declare class MigrationState implements MigrationStateArgs {
readonly collectionInfo: CollectionInfo;
readonly unlockMethod: UnlockMethod;
readonly status: MigrationStatus;
private constructor();
static fromArgs(args: MigrationStateArgs): MigrationState;
static fromAccountInfo(accountInfo: web3.AccountInfo, offset?: number): [MigrationState, number];
static fromAccountAddress(connection: web3.Connection, address: web3.PublicKey, commitmentOrConfig?: web3.Commitment | web3.GetAccountInfoConfig): Promise;
static gpaBuilder(programId?: web3.PublicKey): beetSolana.GpaBuilder<{
collectionInfo: any;
unlockMethod: any;
status: any;
}>;
static deserialize(buf: Buffer, offset?: number): [MigrationState, number];
serialize(): [Buffer, number];
static get byteSize(): number;
static getMinimumBalanceForRentExemption(connection: web3.Connection, commitment?: web3.Commitment): Promise;
static hasCorrectByteSize(buf: Buffer, offset?: number): boolean;
pretty(): {
collectionInfo: CollectionInfo;
unlockMethod: string;
status: MigrationStatus;
};
}
export declare const migrationStateBeet: beet.BeetStruct;