326 lines
7.4 KiB
TypeScript
326 lines
7.4 KiB
TypeScript
export interface LandingPageApiResponse {
|
|
banner: LandingPageBanner;
|
|
numberShowcase: NumberShowcase;
|
|
trustedBy: TrustedByInterface;
|
|
solutions: SolutionsInterface;
|
|
cta1: Cta1Interface;
|
|
cta2: Cta1Interface;
|
|
cta3: Cta1Interface;
|
|
otherTechnologies: OtherTechnologies;
|
|
industries: IndustriesInterface;
|
|
whyChooseUs: WhyChooseUsInterface;
|
|
clientTestimonials: ClientTestimonialInterface;
|
|
specialOffer: SpecialOfferInterface;
|
|
header: LandingHeaderInterface;
|
|
success: LandingSuccessInterface;
|
|
popup: ContactPopupFormInterface;
|
|
footer: LandingFooterInterface;
|
|
offer: LandingOfferInterface;
|
|
offer2: LandingOffer2Interface;
|
|
showCase: ShowCaseInterface;
|
|
priceModel: PriceModelInterface;
|
|
customServices: CustomServicesInterface;
|
|
whyChoose2: WhyChooseUs2Interface;
|
|
faq: FaqInterface;
|
|
testimonials: LandingTestimonialInterface;
|
|
}
|
|
|
|
export interface NumberShowcase {
|
|
id: number;
|
|
title: string;
|
|
numbers: NumberShowcaseItem[];
|
|
order: number;
|
|
isDarkTheme: boolean;
|
|
}
|
|
|
|
export interface TrustedByInterface {
|
|
id: number;
|
|
order: number;
|
|
heading: string;
|
|
description: string;
|
|
brandLogos: {
|
|
data: {
|
|
attributes: {
|
|
title: string;
|
|
description: string;
|
|
brands: {
|
|
name?: string;
|
|
mobile?: boolean;
|
|
logo: LogoImageDataInterface;
|
|
}[];
|
|
};
|
|
};
|
|
};
|
|
}
|
|
|
|
export interface SolutionsInterface {
|
|
id: number;
|
|
order: number;
|
|
heading: string;
|
|
description: string;
|
|
cta: string;
|
|
cardItems: CardItemsInterface[];
|
|
}
|
|
|
|
export interface LandingPageBanner {
|
|
cta: string;
|
|
description: string;
|
|
title: string;
|
|
formCtaText: string;
|
|
formHeaderText: string;
|
|
formTopImage: LogoImageDataInterface;
|
|
heroVideo: LogoVideoDataInterface;
|
|
list: LandingPageBannerListItem[];
|
|
thumbnail: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface LogoImageDataInterface {
|
|
data: {
|
|
attributes: {
|
|
url: string;
|
|
alternativeText: string;
|
|
width?: number;
|
|
height?: number;
|
|
mime?: string;
|
|
name?: string;
|
|
};
|
|
};
|
|
}
|
|
export interface LogoMultipleImageDataInterface {
|
|
data: { attributes: { url: string; alternativeText: string; width?: number; height?: number } }[];
|
|
}
|
|
|
|
export interface LogoVideoDataInterface {
|
|
data: { attributes: { url: string; alternativeText: string; width?: number; height?: number } };
|
|
}
|
|
|
|
export interface LandingPageBannerListItem {
|
|
icon: LogoImageDataInterface;
|
|
id: number;
|
|
text: string;
|
|
}
|
|
|
|
export interface NumberShowcaseItem {
|
|
id: number;
|
|
title: string;
|
|
number: string;
|
|
icon: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface CardItemsInterface {
|
|
id: number;
|
|
title: string;
|
|
icon: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface Cta1Interface {
|
|
id: number;
|
|
order: number | null;
|
|
title: string;
|
|
cta: string;
|
|
bgImage: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface OtherTechnologies {
|
|
id: number;
|
|
order: number;
|
|
heading: string;
|
|
description: string;
|
|
cta: null | string;
|
|
cardItems: CardItem[];
|
|
}
|
|
|
|
export interface IndustriesInterface {
|
|
id: number;
|
|
order: number;
|
|
heading: string;
|
|
description: string;
|
|
cta: string;
|
|
cardItems: CardItem[];
|
|
}
|
|
|
|
export interface CardItem {
|
|
id: number;
|
|
title: string;
|
|
icon: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface WhyChooseUsInterface {
|
|
id: number;
|
|
order: number;
|
|
heading: string;
|
|
description: string;
|
|
cta: null | string;
|
|
cardItems: CardItemsInterface[];
|
|
}
|
|
|
|
export interface ClientTestimonialInterface {
|
|
id: number;
|
|
order: number;
|
|
title: string;
|
|
videoTestimonial: LogoVideoDataInterface;
|
|
clientName: string;
|
|
clientDesignation: string;
|
|
testimonials: {
|
|
data: {
|
|
id: number;
|
|
attributes: {
|
|
name: string;
|
|
designation: string;
|
|
message: string;
|
|
rating: number;
|
|
video: LogoVideoDataInterface;
|
|
};
|
|
}[];
|
|
};
|
|
}
|
|
|
|
export interface SpecialOfferInterface {
|
|
id: number;
|
|
specialOffer: string;
|
|
heading: string;
|
|
cta: string;
|
|
specialOfferIcon: LogoImageDataInterface;
|
|
ctaBgImage: LogoImageDataInterface;
|
|
order: number;
|
|
}
|
|
|
|
export interface LandingHeaderInterface {
|
|
id: number;
|
|
contactNumber: string;
|
|
btnText: string;
|
|
logo: LogoImageDataInterface;
|
|
navItems: {
|
|
title: string;
|
|
link: string;
|
|
}[];
|
|
isDarkTheme: boolean;
|
|
email: string;
|
|
}
|
|
|
|
export interface LandingSuccessInterface {
|
|
id: number;
|
|
order: number;
|
|
heading: string;
|
|
cta: string;
|
|
accordion: {
|
|
id: number;
|
|
title: string;
|
|
description: string;
|
|
icon: LogoImageDataInterface;
|
|
image: LogoImageDataInterface;
|
|
}[];
|
|
}
|
|
|
|
export interface ContactPopupFormInterface {
|
|
id: number;
|
|
header: string;
|
|
cta: string;
|
|
companyLogo: LogoImageDataInterface;
|
|
backgroundImage: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface LandingFooterInterface {
|
|
id: number;
|
|
ctaTitle: string;
|
|
ctaDescription: string;
|
|
ctaBtn: string;
|
|
callTitle: string;
|
|
callNumber: string;
|
|
emailTitle: string;
|
|
email: string;
|
|
followTitle: string;
|
|
social: { icon: LogoImageDataInterface; link: string }[];
|
|
logo: LogoImageDataInterface;
|
|
copyRightTxt: string;
|
|
isDarkTheme: boolean;
|
|
locationTitle: string;
|
|
location: string;
|
|
locationFlag: LogoImageDataInterface;
|
|
}
|
|
|
|
export interface LandingOfferInterface {
|
|
offerTitle: string;
|
|
btnText: string;
|
|
isDarkTheme: boolean;
|
|
}
|
|
|
|
export interface HeadingDescription {
|
|
id: number;
|
|
heading: string;
|
|
description: string;
|
|
order: number;
|
|
}
|
|
|
|
export interface HCD extends HeadingDescription {
|
|
// H: Heading, C: CTA, D: Description
|
|
cta: string;
|
|
}
|
|
|
|
export interface LandingOffer2Interface {
|
|
title: string;
|
|
order: number;
|
|
}
|
|
|
|
export interface ShowCaseInterface extends HCD {
|
|
projectRow1: LogoMultipleImageDataInterface;
|
|
projectRow2: LogoMultipleImageDataInterface;
|
|
}
|
|
|
|
export interface PriceModelInterface extends HeadingDescription {
|
|
priceList: {
|
|
title: string;
|
|
price?: string;
|
|
details: string;
|
|
btnText: string;
|
|
tag: string;
|
|
newPrice?: string;
|
|
}[];
|
|
isDarkTheme?: boolean;
|
|
}
|
|
|
|
export interface CustomServicesInterface extends HCD {
|
|
tabs: {
|
|
number: string;
|
|
icon: LogoImageDataInterface;
|
|
title: string;
|
|
details: string;
|
|
}[];
|
|
isDarkTheme?: boolean;
|
|
}
|
|
|
|
export interface WhyChooseUs2Interface extends HCD {
|
|
cards: {
|
|
images: LogoMultipleImageDataInterface;
|
|
title: string;
|
|
description: string;
|
|
}[];
|
|
isDarkTheme: boolean;
|
|
}
|
|
|
|
export interface FaqInterface extends HeadingDescription {
|
|
image: LogoImageDataInterface;
|
|
faqs: {
|
|
id: number;
|
|
question: string;
|
|
answer: string;
|
|
}[];
|
|
}
|
|
|
|
export interface LandingTestimonialInterface extends HeadingDescription {
|
|
landingTestimonials: {
|
|
data: {
|
|
id: number;
|
|
attributes: {
|
|
name: string;
|
|
designation: string;
|
|
message: string;
|
|
rating: number;
|
|
video: LogoVideoDataInterface;
|
|
clientImage: LogoImageDataInterface;
|
|
};
|
|
}[];
|
|
};
|
|
isDarkTheme: boolean;
|
|
}
|