import { FabrixModel as Model } from '@fabrix/fabrix/dist/common';
import { SequelizeResolver } from '@fabrix/spool-sequelize';
export declare class TransactionActionResolver extends SequelizeResolver {
    batch(options: any, batch: any): any;
    resolveByInstance(transaction: any, options?: {
        [key: string]: any;
    }): Promise<any>;
    resolveById(transaction: any, options?: {
        [key: string]: any;
    }): any;
    resolveByToken(transaction: any, options?: {
        [key: string]: any;
    }): any;
    resolveByNumber(transaction: any, options?: {
        [key: string]: any;
    }): any;
    resolveByString(transaction: any, options?: {
        [key: string]: any;
    }): any;
    resolve(transaction: any, options?: {
        [key: string]: any;
    }): any;
}
export declare class TransactionAction extends Model {
    static readonly resolver: typeof TransactionActionResolver;
    static config(app: any, Sequelize: any): {
        options: {
            underscored: boolean;
            enums: {};
            description: string;
            scopes: {
                live: {
                    where: {
                        live_mode: boolean;
                    };
                };
                authorized: {
                    where: {
                        kind: string;
                        status: string;
                    };
                };
                captured: {
                    where: {
                        kind: string[];
                        status: string;
                    };
                };
                voided: {
                    where: {
                        kind: string;
                        status: string;
                    };
                };
                refunded: {
                    where: {
                        kind: string;
                        status: string;
                    };
                };
            };
            hooks: {
                beforeCreate: (transaction: any, options: any) => void;
            };
        };
    };
    static schema(app: any, Sequelize: any): {
        token: {
            type: any;
            unique: boolean;
        };
        transaction_id: {
            type: any;
            allowNull: boolean;
        };
        live_mode: {
            type: any;
            defaultValue: any;
        };
    };
    static associate(models: any): void;
}
