import type { BN } from '@project-serum/anchor';
import type { Wallet } from '@saberhq/solana-contrib';
import type { Connection, PublicKey } from '@solana/web3.js';
/**
 * Create blaze
 * @param connection
 * @param wallet
 * @param params
 * projectId: PublicKey;
 * prizeMint: PublicKey;
 * tokenMint?: PublicKey;
 * treasury: PublicKey;
 * burnRate?: number;
 * entrantFee: BN;
 * maxEntrants: number;
 * start: BN;
 * end: BN;
 * maxEntrantsPerWalletRate?: number;
 * category?: string;
 * @returns { signature, blazeId }
 */
export declare const createBlaze: (connection: Connection, wallet: Wallet, params: {
    projectId: PublicKey;
    prizeMint: PublicKey;
    tokenMint?: PublicKey;
    treasury: PublicKey;
    burnRate?: number;
    entrantFee: BN;
    maxEntrants: number;
    start: BN;
    end: BN;
    maxEntrantsPerWalletRate?: number;
    category?: string;
}) => Promise<{
    blazeId: PublicKey;
    signature: string;
}>;
/**
 * Update single blaze
 * @param connection
 * @param wallet
 * @param params
 * blazeId: PublicKey;
 * projectId: PublicKey;
 * tokenMint?: PublicKey;
 * tokenAccount?: PublicKey;
 * treasury?: PublicKey;
 * burnRate?: number;
 * entrantFee: BN;
 * start: BN;
 * end: BN;
 * maxEntrantsPerWalletRate?: number;
 * category?: string;
 * @returns signature of the transaction
 */
export declare const updateBlaze: (connection: Connection, wallet: Wallet, params: {
    blazeId: PublicKey;
    projectId: PublicKey;
    tokenMint?: PublicKey;
    tokenAccount?: PublicKey;
    treasury?: PublicKey;
    burnRate?: number;
    entrantFee: BN;
    start: BN;
    end: BN;
    maxEntrantsPerWalletRate?: number;
    category?: string;
}) => Promise<string>;
/**
 * Buy multiple entrants from a blaze
 * @param connection
 * @param wallet
 * @param params
 * quantity: number;
 * blazeId: PublicKey;
 * @returns
 */
export declare const redeemEntrants: (connection: Connection, wallet: Wallet, params: {
    quantity: number;
    blazeId: PublicKey;
}) => Promise<string>;
/**
 *
 * @param connection
 * @param wallet
 * @param params
 * blazeId: PublicKey;
 * @returns signature
 */
export declare const resolveBlaze: (connection: Connection, wallet: Wallet, params: {
    blazeId: PublicKey;
}) => Promise<string>;
export declare const claimPrize: (connection: Connection, wallet: Wallet, params: {
    blazeId: PublicKey;
}) => Promise<string>;
export declare const closeBlaze: (connection: Connection, wallet: Wallet, params: {
    blazeId: PublicKey;
}) => Promise<string>;
//# sourceMappingURL=index.d.ts.map