convexsol_stage/interfaces/LandingNew.interface.ts
2025-12-02 11:02:00 +05:30

182 lines
4.9 KiB
TypeScript

import {
Cta1Interface,
CustomServicesInterface,
LandingHeaderInterface,
LandingOffer2Interface,
LandingOfferInterface,
LandingPageBanner,
LandingTestimonialInterface,
NumberShowcase,
WhyChooseUs2Interface,
HCD,
LogoMultipleImageDataInterface,
LogoImageDataInterface,
FaqInterface,
LandingFooterInterface,
ContactPopupFormInterface,
PriceModelInterface,
HeadingDescription,
TrustedByInterface,
} from './LandingInterface';
export interface NewLandingPageApiResponse {
whatsappNumber: string;
thankYouUrl: string;
offer: LandingOfferInterface;
header: LandingHeaderInterface;
banner: LandingPageBanner;
offer2: LandingOffer2Interface;
numberShowcase: NumberShowcase;
testimonials: LandingTestimonialInterface;
cta1: LandingCtaInterface;
trustedBy: LandingTrustedByInterface;
customServices: CustomServicesInterface;
ourServices: OurServicesInterface;
cta2: LandingCtaInterface;
workProcess: WorkProcessInterface;
industry: LandingIndustryInterface;
cta3: LandingCtaInterface;
magicHand: MagicHandInterface;
whyUs: WhyChooseUs2Interface;
faq: FaqInterface;
footer: LandingFooterInterface;
ourDelivery: OurDeliveryInterface;
ourDeliverySlider: OurDeliveryInterface;
ourPortfolio: OurPortFolioInterface;
popup: PopUpNewLandingInterface;
whyUsGrid: WhyChooseUs2Interface;
uniqueServices: CustomServicesInterface;
priceModel: PriceModelInterface;
uniqueServices2: CustomServicesInterface;
showCase: ShowCaseComponentInterface;
clients: LandingClientsInterface;
darkBanner: DarkBannerInterface;
}
export interface OurServicesInterface extends WhyChooseUs2Interface {}
export interface LandingIndustryInterface extends WhyChooseUs2Interface {
isDarkTheme: boolean;
}
export interface LandingCtaInterface extends Cta1Interface {
bgColor: string;
isDarkTheme?: boolean;
}
export interface LandingTrustedByInterface extends HCD {
clientLogos: LogoMultipleImageDataInterface;
ctaTitle: string;
ctaDescription: string;
}
export interface WorkProcessInterface extends HCD {
process: {
id: number;
heading: string;
numbering: string;
cards: {
images: LogoMultipleImageDataInterface;
title: string;
description: string;
}[];
}[];
isDarkTheme: boolean;
}
export interface MagicHandInterface extends HCD {
cards: { name: string; designation: string; experience: string; image: LogoImageDataInterface }[];
}
export interface ClientDataInterface extends SliderModalInterface {
image: LogoImageDataInterface;
clientLogo: LogoImageDataInterface;
title: string;
details: string;
cta: string;
ctaBg: string;
viewMoreTxt: string;
viewMoreBg: string;
viewMoreShadow: string;
results: { value: string; details: string }[];
addTitle: string;
}
export interface SliderModalInterface {
mainBg: string;
modalTitle: string;
modalDescription: string;
modalCta: string;
sliders: {
image: LogoImageDataInterface;
label: string;
}[];
}
export interface OurDeliveryInterface extends HCD {
clients: ClientDataInterface[];
}
export interface PortfolioCardComponent extends SliderModalInterface {
heading: string;
description: string;
image: LogoImageDataInterface;
clientLogo: LogoImageDataInterface;
cta: string;
results: { value: string; details: string }[];
modalImage: LogoImageDataInterface;
addTitle: string;
companyName: string;
portfolioTitle: string;
isImageFull: boolean;
cursorText: string;
}
export interface OurPortFolioInterface {
order: number;
scrollComp: PortfolioCardComponent[];
sliderComp: PortfolioCardComponent[];
}
export interface PopUpNewLandingInterface extends ContactPopupFormInterface {
offerImage: LogoImageDataInterface;
}
export interface ShowCaseComponentInterface {
heading: string;
sliders: {
mediaFile: LogoImageDataInterface;
name: string;
videoMobile: LogoImageDataInterface;
}[];
order: number;
cta: string;
}
export interface LandingClientsInterface extends HeadingDescription {
order: number;
landingBrands: {
data: {
attributes: {
title: string;
description: string;
brands: {
name?: string;
mobile?: boolean;
logo: LogoImageDataInterface;
}[];
};
};
};
video: LogoImageDataInterface;
}
export interface DarkBannerInterface extends HeadingDescription {
title: string;
ratings: {
image: LogoImageDataInterface;
rating: number;
}[];
cards: {
icon: LogoImageDataInterface;
title: string;
}[];
formBtnText: string;
formHeaderText: string;
formTopImage: LogoImageDataInterface;
}