/// <reference types="react" />
import { AnyExtensionInputMap, PortableSchema, ResolvedExtensionInputs, RouteRef } from '@backstage/frontend-plugin-api';
import { Entity } from '@backstage/catalog-model';
import { Expand } from '../../../packages/frontend-plugin-api/src/types';
export { useEntityPermission } from './hooks/useEntityPermission';
export { isOwnerOf } from './utils';
/** @alpha */
export declare const catalogExtensionData: {
    entityContentTitle: import("@backstage/frontend-plugin-api").ConfigurableExtensionDataRef<string, {}>;
    entityFilterFunction: import("@backstage/frontend-plugin-api").ConfigurableExtensionDataRef<(entity: Entity) => boolean, {}>;
    entityFilterExpression: import("@backstage/frontend-plugin-api").ConfigurableExtensionDataRef<string, {}>;
};
/** @alpha */
export declare function createEntityCardExtension<TConfig extends {
    filter?: string;
}, TInputs extends AnyExtensionInputMap>(options: {
    namespace?: string;
    name?: string;
    attachTo?: {
        id: string;
        input: string;
    };
    disabled?: boolean;
    inputs?: TInputs;
    configSchema?: PortableSchema<TConfig>;
    filter?: typeof catalogExtensionData.entityFilterFunction.T | typeof catalogExtensionData.entityFilterExpression.T;
    loader: (options: {
        config: TConfig;
        inputs: Expand<ResolvedExtensionInputs<TInputs>>;
    }) => Promise<JSX.Element>;
}): import("@backstage/frontend-plugin-api").ExtensionDefinition<TConfig>;
/** @alpha */
export declare function createEntityContentExtension<TInputs extends AnyExtensionInputMap>(options: {
    namespace?: string;
    name?: string;
    attachTo?: {
        id: string;
        input: string;
    };
    disabled?: boolean;
    inputs?: TInputs;
    routeRef?: RouteRef;
    defaultPath: string;
    defaultTitle: string;
    filter?: typeof catalogExtensionData.entityFilterFunction.T | typeof catalogExtensionData.entityFilterExpression.T;
    loader: (options: {
        inputs: Expand<ResolvedExtensionInputs<TInputs>>;
    }) => Promise<JSX.Element>;
}): import("@backstage/frontend-plugin-api").ExtensionDefinition<{
    title: string;
    path: string;
    filter?: string | undefined;
}>;
