import { BeanPath, StringPath } from '../expression/';
import { MetaElement, QMetaElement } from './meta.element';
import { MetaRepositoryActionType } from './meta.repository.action.type';
import { ManyQueryResult, OneQueryResult } from 'ngrx-json-api';
export declare module MetaResourceAction {
    interface Attributes extends MetaElement.Attributes {
        actionType?: MetaRepositoryActionType;
    }
}
export interface MetaResourceAction extends MetaElement {
    attributes?: MetaResourceAction.Attributes;
}
export interface MetaResourceActionResult extends OneQueryResult {
    data?: MetaResourceAction;
}
export interface MetaResourceActionListResult extends ManyQueryResult {
    data?: Array<MetaResourceAction>;
}
export declare class QMetaResourceAction extends BeanPath<MetaResourceAction> {
    metaId: string;
    id: StringPath;
    type: StringPath;
    attributes: QMetaResourceAction.QAttributes;
    relationships: QMetaElement.QRelationships;
}
export declare module QMetaResourceAction {
    class QAttributes extends BeanPath<MetaResourceAction.Attributes> {
        actionType: StringPath;
        name: StringPath;
    }
}
export declare let createEmptyMetaResourceAction: (id: string) => MetaResourceAction;
