v8-ui-components
Version:
A component lib for v8 storefront apps
74 lines (73 loc) • 2.37 kB
TypeScript
import { IThemeInterface } from "v8-theme-interfaces/lib/theme.interfaces";
import { ICtaButtonProps } from "../../CtaButton/CtaButton.interfaces";
import { ButtonStyle } from "v8-ui-atoms/build/components/Button/Button.interfaces";
import { CMSComponentNames } from "../../../Context";
import { IContainerChildProps } from "../TwoBannerContainer/TwoBannerContainer.interfaces";
export interface IHeroBannerComponentProps extends IContainerChildProps {
BannerImageAltText: string;
BannerImageSizes: IImageSize;
BodyText: string;
ButtonStyle?: ButtonStyle;
ButtonText: string;
centerContent?: boolean;
ctaAnalytics: (props: ICtaButtonProps) => void;
Link: string;
HeadingText: string;
parentName?: string;
SubHeadingText: string;
TextAlignment: ContentAlign;
TextBoxAlignment: ContentAlign;
}
export interface IImageSize {
large: {
reference?: string;
url: string;
name?: string;
filetype?: string;
};
medium: {
reference?: string;
url: string;
name?: string;
filetype?: string;
};
small: {
reference?: string;
url: string;
name?: string;
filetype?: string;
};
}
export declare type ContentAlign = "left" | "center" | "right" | undefined;
export declare type IAlignSelfOptions = "auto" | "baseline" | "center" | "end" | "left" | "right" | "flex-start" | "flex-end";
export interface IHeroBannerStyledProps extends IContainerChildProps {
theme: IThemeInterface;
}
export interface IHeroBannerBackgroundStyledProps {
imageSizes: IImageSize;
}
export interface IHeroBannerContentWrapperStyledProps {
textBoxAlignment: ContentAlign;
}
export interface IHeroBannerContentStyledProps {
textAlignment: ContentAlign;
theme: IThemeInterface;
centerContent: boolean;
}
export interface IHeroBannerSmallHeading {
theme: IThemeInterface;
}
export interface IHeroBannerHeading {
theme: IThemeInterface;
}
export interface IHeroBannerBodyText {
theme: IThemeInterface;
}
export interface IHeroBannerButtonWrapper {
}
export interface IHeroBannerCmsObject {
type: "Template";
data: IHeroBannerComponentProps;
componentName: typeof CMSComponentNames.HeroBanner;
componentKey: string;
}