import { FollowerNode } from "@local-logic/channel";
import { NeighborhoodFeaturedProps } from "../sdks/NeighborhoodFeatured/types";
import { LeadCaptureProps } from "../sdks/LeadCapture/types";
import { LocalDemographicsProps } from "~/sdks/LocalDemographics/types";
import { LocalContentProps } from "~/sdks/LocalContent/types";
import { NeighborhoodMapProps } from "~/sdks/NeighborhoodMap/types";
import { NeighborhoodCharacteristicsProps } from "~/sdks/NeighborhoodCharacteristics/types";
import { NeighborhoodHighlightsProps } from "~/sdks/NeighborhoodHighlights/types";
import { NeighborhoodHeroProps } from "~/sdks/NeighborhoodHero/types";
import { NeighborhoodDemographicsProps } from "~/sdks/NeighborhoodDemographics/types";
import { NeighborhoodPropertyValueDriversProps } from "~/sdks/NeighborhoodPropertyValueDrivers/types";
import { NeighborhoodMatchProps } from "~/sdks/NeighborhoodMatch/types";
import { NeighborhoodMarketTrendsProps } from "~/sdks/NeighborhoodMarketTrends/types";
import { NeighborhoodSchoolsProps } from "~/sdks/NeighborhoodSchools/types";
import { NeighborhoodShowcaseProps } from "~/sdks/NeighborhoodShowcase/types";
type ValueOf<T> = T[keyof T];
export type SDKPropsMappings = {
    "local-content": LocalContentProps;
    "local-demographics": LocalDemographicsProps;
    "neighborhood-map": NeighborhoodMapProps;
    "neighborhood-characteristics": NeighborhoodCharacteristicsProps;
    "neighborhood-highlights": NeighborhoodHighlightsProps;
    "neighborhood-hero": NeighborhoodHeroProps;
    "neighborhood-demographics": NeighborhoodDemographicsProps;
    "neighborhood-property-value-drivers": NeighborhoodPropertyValueDriversProps;
    "neighborhood-match": NeighborhoodMatchProps;
    "neighborhood-market-trends": NeighborhoodMarketTrendsProps;
    "neighborhood-schools": NeighborhoodSchoolsProps;
    "neighborhood-showcase": NeighborhoodShowcaseProps;
    "neighborhood-featured": NeighborhoodFeaturedProps;
    "lead-capture": LeadCaptureProps;
};
export type SDKProps = ValueOf<SDKPropsMappings>;
export interface DefaultContext<T extends SDKProps> {
    sdkState: Partial<Pick<T, "apiKey" | "globalOptions" | "options" | "location">> & {
        clientId?: string;
    };
    setSdkState: (data: Partial<Pick<T, "options" | "apiKey" | "globalOptions" | "location">>) => void;
    onChange: T["onChange"];
    followerNode: FollowerNode | undefined;
}
export type Location = {
    lat?: number;
    lng?: number;
    geographyId?: string;
};
export declare enum ProductNames {
    LOCAL_CONTENT = "local-content",
    LOCAL_DEMOGRAPHICS = "local-demographics",
    NEIGHBORHOOD_HERO = "neighborhood-hero",
    NEIGHBORHOOD_MAP = "neighborhood-map",
    NEIGHBORHOOD_CHARACTERISTICS = "neighborhood-characteristics",
    NEIGHBORHOOD_HIGHLIGHTS = "neighborhood-highlights",
    NEIGHBORHOOD_DEMOGRAPHICS = "neighborhood-demographics",
    NEIGHBORHOOD_PROPERTY_VALUE_DRIVERS = "neighborhood-property-value-drivers",
    NEIGHBORHOOD_MATCH = "neighborhood-match",
    NEIGHBORHOOD_MARKET_TRENDS = "neighborhood-market-trends",
    NEIGHBORHOOD_SCHOOLS = "neighborhood-schools",
    NEIGHBORHOOD_SHOWCASE = "neighborhood-showcase",
    NEIGHBORHOOD_FEATURED = "neighborhood-featured",
    LEAD_CAPTURE = "lead-capture"
}
export {};
//# sourceMappingURL=sdks.d.ts.map