import { EASDKTarget, ComplexAction } from '../../types';
import { ActionGroup } from '../../components/Page/types';
export interface EASDKBreadcrumb {
    label: string;
    href?: string;
    target?: EASDKTarget;
    loading?: boolean;
    message?(): void;
}
export declare function transformBreadcrumb(breadcrumb: ComplexAction, shopOrigin?: string): EASDKBreadcrumb;
export { ActionGroup };
export interface EASDKBaseButton {
    label?: string;
    href?: string;
    style?: 'disabled' | 'danger';
    target?: EASDKTarget;
    loading?: boolean;
    message?(): void;
}
export interface EASDKLinkButton extends EASDKBaseButton {
    type: 'dropdown';
    links: EASDKButton[];
}
export declare type EASDKButton = EASDKBaseButton | EASDKLinkButton;
export declare function transformAction(shopOrigin: string): (action: ComplexAction) => EASDKButton;
export declare function transformActionGroup(shopOrigin: string): (actionGroup: ActionGroup) => EASDKLinkButton;
export interface Pagination {
    hasNext?: boolean;
    hasPrevious?: boolean;
    nextURL?: string;
    previousURL?: string;
    onNext?(): void;
    onPrevious?(): void;
}
export declare type PaginationDirection = {
    message(): void;
} | {
    href: string;
};
export interface EASDKPagination {
    next?: PaginationDirection;
    previous?: PaginationDirection;
}
export declare function transformPagination(pagination?: Pagination): EASDKPagination | undefined;
