import { RTDBOptions, rtdbOptions } from '@posva/vuefire-core';
import firebase from 'firebase/app';
import { Action, ActionContext } from 'vuex';
export { rtdbOptions };
interface FirebaseActionContext<S, R> extends ActionContext<S, R> {
    bindFirebaseRef(key: string, reference: firebase.database.Reference | firebase.database.Query, options?: RTDBOptions): Promise<firebase.database.DataSnapshot>;
    unbindFirebaseRef(key: string, reset?: RTDBOptions['reset']): void;
}
export declare function firebaseAction<S, R>(action: (context: FirebaseActionContext<S, R>, payload: any) => any): Action<S, R>;
