import { Checksum256, Name, PublicKey } from '@wharfkit/antelope';
import { Signer } from '../services/blockchain/eosio/transaction';
import { TonomyUsername } from '../util/username';
import { AppStatusEnum } from '../types/AppStatusEnum';
export interface AppData {
    accountName: Name;
    appName: string;
    usernameHash: Checksum256;
    description: string;
    logoUrl: string;
    origin: string;
    version: number;
    status: AppStatusEnum;
    accentColor: string;
    backgroundColor: string;
}
type AppConstructor = Omit<AppData, 'usernameHash'> & {
    username?: TonomyUsername;
    usernameHash?: Checksum256;
};
export type AppCreateOptions = {
    usernamePrefix: string;
    appName: string;
    description: string;
    logoUrl: string;
    origin: string;
    backgroundColor: string;
    accentColor: string;
    publicKey: PublicKey;
    signer: Signer;
};
export declare class App implements AppData {
    accountName: Name;
    appName: string;
    username?: TonomyUsername;
    usernameHash: Checksum256;
    description: string;
    logoUrl: string;
    origin: string;
    version: number;
    status: AppStatusEnum;
    accentColor: string;
    backgroundColor: string;
    constructor(options: AppConstructor);
    static create(options: AppCreateOptions): Promise<App>;
    static getApp(origin: string): Promise<App>;
}
export {};
//# sourceMappingURL=App.d.ts.map