import { DependencyObserver } from "./DepenedencyObserver"; /** * Observable wrapper for retrieving a paginated list of compositions by type with automatic updates. */ export declare class GetCompositionListObservable extends DependencyObserver { /** The composition type character name */ compositionName: string; /** The user ID who owns the compositions */ userId: number; /** Number of items per page */ inpage: number; /** Current page number */ page: number; /** List of composition data */ data: any; /** Starting page index */ startPage: number; /** * Creates a new composition list observable. * @param compositionName - The composition type name * @param userId - The user ID who owns the compositions * @param inpage - Number of items per page * @param page - Page number (1-indexed) * @param format - Output format (JUSTDATA, DATAID, NORMAL) */ constructor(compositionName: string, userId: number, inpage: number, page: number, format: number); /** * Fetches paginated composition list and sets up change listeners. * @returns Array of formatted composition data */ bind(): Promise; /** * Builds the list of compositions in the specified format. * @returns Array of formatted composition data */ build(): Promise; } /** * Creates an observable that tracks a paginated list of compositions and updates subscribers when they change. * @param compositionName - The composition type name * @param userId - The user ID who owns the compositions * @param inpage - Number of items per page * @param page - Page number (1-indexed) * @param format - Output format (JUSTDATA, DATAID, NORMAL) * @returns Observable instance for the composition list * * @example * const observer = GetCompositionListListener("BlogPost", 123, 10, 1, JUSTDATA); * observer.subscribe((data) => console.log(data)); */ export declare function GetCompositionListListener(compositionName: string, userId: number, inpage: number, page: number, format?: number): GetCompositionListObservable;