import * as factory from '../../../factory';
import type { OfferRepo } from '../../../repo/offer/unitPriceInCatalog';
import type { OfferCatalogRepo } from '../../../repo/offerCatalog';
import type { ProductRepo } from '../../../repo/product';
type ITicketOffer = factory.product.ITicketOffer & {
    parentOffer?: {
        id: string;
    };
};
/**
 * プロダクトオファーを検索する
 */
export declare function searchProductOffers(params: {
    /**
     * 指定したIDのオファーだけ取得する場合
     */
    ids?: string[];
    itemOffered: {
        id: string;
    };
    availableAt?: {
        id: string;
    };
    onlyValid: boolean;
    addSortIndex: boolean;
    useIncludeInDataCatalog: boolean;
    includedInDataCatalog: {
        id: string;
    };
    limit?: number;
    page?: number;
}): (repos: {
    offer: OfferRepo;
    offerCatalog: OfferCatalogRepo;
    product: ProductRepo;
}) => Promise<ITicketOffer[]>;
export {};
