/**
 * This file contains export components and API for FlexibleCard components.
 * For internal usage for access to all available props, please use following
 * - ./components/elements for metadata component
 * - ./components/actions for action component
 *
 * DO NOT add a new prop to these components until we are ready to support it externally.
 */
import React from 'react';
import type { Prettify } from '@atlaskit/linking-common';
import { CommentCount, LinkIcon, ModifiedOn, OwnedBy, OwnedByGroup, Preview, ReactCount, Snippet, State, Title } from './components/elements';
export declare const AssignedToElement: () => React.JSX.Element;
export declare const AssignedToGroupElement: () => React.JSX.Element;
export declare const AttachmentCountElement: () => React.JSX.Element;
export declare const AuthorGroupElement: () => React.JSX.Element;
export declare const ChecklistProgressElement: () => React.JSX.Element;
export declare const CollaboratorGroupElement: () => React.JSX.Element;
type CommentCountElementProps = Pick<React.ComponentProps<typeof CommentCount>, 'color' | 'onRender'>;
export declare const CommentCountElement: (props?: CommentCountElementProps) => React.JSX.Element;
export declare const CreatedOnElement: () => React.JSX.Element;
export declare const CreatedByElement: () => React.JSX.Element;
export declare const DueOnElement: () => React.JSX.Element;
export declare const LatestCommitElement: () => React.JSX.Element;
type LinkIconElementProps = Prettify<Pick<React.ComponentProps<typeof LinkIcon>, 'render'> & {
    iconTileSize?: 16 | 24;
}>;
export declare const LinkIconElement: (props?: LinkIconElementProps) => React.JSX.Element;
export declare const LocationElement: () => React.JSX.Element;
export declare const ModifiedByElement: () => React.JSX.Element;
export type ModifiedOnElementProps = Pick<React.ComponentProps<typeof ModifiedOn>, 'hideDatePrefix' | 'color' | 'onRender' | 'fontSize'>;
export declare const ModifiedOnElement: (props?: ModifiedOnElementProps) => React.JSX.Element;
export type OwnedByElementProps = Pick<React.ComponentProps<typeof OwnedBy>, 'hideFormat' | 'color' | 'onRender' | 'textPrefix' | 'fontSize'>;
export declare const OwnedByElement: (props?: OwnedByElementProps) => React.JSX.Element;
type OwnedByGroupElementProps = Pick<React.ComponentProps<typeof OwnedByGroup>, 'onRender'>;
export declare const OwnedByGroupElement: (props?: OwnedByGroupElementProps) => React.JSX.Element;
type PreviewElementProps = {
    url?: React.ComponentProps<typeof Preview>['overrideUrl'];
};
export declare const PreviewElement: (props?: PreviewElementProps) => React.JSX.Element;
export declare const PriorityElement: () => React.JSX.Element;
export declare const ProgrammingLanguageElement: () => React.JSX.Element;
export declare const ProviderElement: () => React.JSX.Element;
type ReactCountElementProps = Pick<React.ComponentProps<typeof ReactCount>, 'color' | 'onRender'>;
export declare const ReactCountElement: (props?: ReactCountElementProps) => React.JSX.Element;
export declare const ReadTimeElement: () => React.JSX.Element;
export declare const SentOnElement: () => React.JSX.Element;
export type SnippetElementProps = Prettify<Pick<React.ComponentProps<typeof Snippet>, 'maxLines'> & {
    text?: React.ComponentProps<typeof Snippet>['content'];
}>;
export declare const SnippetElement: (props?: SnippetElementProps) => React.JSX.Element;
export declare const SourceBranchElement: () => React.JSX.Element;
export type StateElementProps = Prettify<Pick<React.ComponentProps<typeof State>, 'maxWidth'>>;
export declare const StateElement: (props?: StateElementProps) => React.JSX.Element;
export declare const StoryPointsElement: () => React.JSX.Element;
export declare const SubscriberCountElement: () => React.JSX.Element;
export declare const SubTasksProgressElement: () => React.JSX.Element;
export declare const TargetBranchElement: () => React.JSX.Element;
export type TitleElementProps = Pick<React.ComponentProps<typeof Title>, 'hideTooltip' | 'maxLines' | 'target' | 'text' | 'theme' | 'size' | 'testId'>;
export declare const TitleElement: (props?: TitleElementProps) => React.JSX.Element;
export declare const ViewCountElement: () => React.JSX.Element;
export declare const VoteCountElement: () => React.JSX.Element;
type BaseActionProps = {
    appearance?: 'default' | 'subtle';
};
export declare const toActionProps: (props?: BaseActionProps) => {
    appearance: "default" | "subtle";
    icon: undefined;
};
export type CopyLinkActionProps = BaseActionProps;
export declare const CopyLinkAction: (props: CopyLinkActionProps) => React.JSX.Element;
export type CustomActionProps = Prettify<BaseActionProps & {
    children: React.ReactNode;
    onClick: () => void;
}>;
export declare const CustomAction: (props: CustomActionProps) => React.JSX.Element;
export type DownloadActionProps = BaseActionProps;
export declare const DownloadAction: (props: DownloadActionProps) => React.JSX.Element;
export type FollowActionProps = BaseActionProps;
export declare const FollowAction: (props: FollowActionProps) => React.JSX.Element;
export type PreviewActionProps = BaseActionProps;
export declare const PreviewAction: (props: PreviewActionProps) => React.JSX.Element;
export declare const UnresolvedAction: (props: {
    hasPadding?: boolean;
}) => React.JSX.Element;
export { CustomUnresolvedAction } from './components/actions';
export { CustomByAccessTypeElement, CustomByStatusElement } from './components/elements';
