/**
 * JSON-LD 结构化数据辅助组件
 * 为搜索引擎和 AI 引擎提供语义化数据
 *
 * 所有品牌信息从参数传入，不再硬编码。
 */
export interface BreadcrumbItem {
    name: string;
    url: string;
}
export declare function buildWebSiteSchema(config: {
    domain: string;
    brand: {
        name: string;
        logo: string;
    };
    seo?: {
        title?: string;
        description?: string;
    };
    person?: {
        title?: string;
    };
}): {
    '@context': string;
    '@type': string;
    name: string;
    url: string;
    description: string;
    inLanguage: string;
    potentialAction: {
        '@type': string;
        target: {
            '@type': string;
            urlTemplate: string;
        };
        'query-input': string;
    };
};
export declare function buildPersonSchema(config: {
    domain: string;
    brand: {
        name: string;
    };
    person: {
        name: string;
        email?: string;
        title?: string;
        address?: {
            locality?: string;
            country?: string;
        };
        socialLinks?: Record<string, string>;
    };
    seo?: {
        description?: string;
    };
}): {
    '@context': string;
    '@type': string;
    name: string;
    alternateName: string;
    description: string;
    url: string;
    email: string;
    telephone: string;
    address: {
        '@type': string;
        addressLocality: string;
        addressCountry: string;
    };
    jobTitle: string;
    knowsAbout: string[];
    sameAs: string[];
};
export declare function buildBlogSchema(posts: {
    title: string;
    url: string;
    datePublished: string;
    description?: string;
}[], config: {
    domain: string;
    brand: {
        name: string;
    };
    person: {
        name: string;
    };
}): {
    '@context': string;
    '@type': string;
    name: string;
    description: string;
    url: string;
    inLanguage: string;
    author: {
        '@type': string;
        name: string;
        url: string;
    };
    blogPost: {
        '@type': string;
        headline: string;
        description: string;
        url: string;
        datePublished: string;
        author: {
            '@type': string;
            name: string;
            url: string;
        };
    }[];
};
export interface ArticleSchemaInput {
    title: string;
    description: string;
    url: string;
    imageUrl?: string;
    datePublished: string;
    dateModified?: string;
    authorName?: string;
    authorUrl?: string;
    tags?: string[];
    category?: string;
}
export declare function buildArticleSchema(input: ArticleSchemaInput, defaultAuthor?: {
    name: string;
    url: string;
}): Record<string, unknown>;
export declare function buildBreadcrumbSchema(items: BreadcrumbItem[]): {
    '@context': string;
    '@type': string;
    itemListElement: {
        '@type': string;
        position: number;
        name: string;
        item: string;
    }[];
};
export interface FAQItem {
    question: string;
    answer: string;
}
export declare function buildFAQSchema(items: FAQItem[]): {
    '@context': string;
    '@type': string;
    mainEntity: {
        '@type': string;
        name: string;
        acceptedAnswer: {
            '@type': string;
            text: string;
        };
    }[];
};
//# sourceMappingURL=JsonLd.d.ts.map