/**
 * Default values for pagination across the application.
 * These values should be used consistently throughout the codebase.
 */
/**
 * Default page size for all list operations.
 * This value determines how many items are returned in a single page by default.
 */
export declare const DEFAULT_PAGE_SIZE = 25;
/**
 * Default values for repository operations
 */
export declare const REPOSITORY_DEFAULTS: {
    /**
     * Whether to include branches in repository details by default
     */
    INCLUDE_BRANCHES: boolean;
    /**
     * Whether to include commits in repository details by default
     */
    INCLUDE_COMMITS: boolean;
    /**
     * Whether to include pull requests in repository details by default
     */
    INCLUDE_PULL_REQUESTS: boolean;
};
/**
 * Default values for pull request operations
 */
export declare const PULL_REQUEST_DEFAULTS: {
    /**
     * Whether to include participants in pull request details by default
     */
    INCLUDE_PARTICIPANTS: boolean;
    /**
     * Whether to include activities in pull request details by default
     */
    INCLUDE_ACTIVITIES: boolean;
    /**
     * Whether to include commits in pull request details by default
     */
    INCLUDE_COMMITS: boolean;
    /**
     * Whether to include comments in pull request details by default
     */
    INCLUDE_COMMENTS: boolean;
};
/**
 * Apply default values to options object.
 * This utility ensures that default values are consistently applied.
 *
 * @param options Options object that may have some values undefined
 * @param defaults Default values to apply when options values are undefined
 * @returns Options object with default values applied
 *
 * @example
 * const options = applyDefaults({ limit: 10 }, { limit: DEFAULT_PAGE_SIZE, includeBranches: true });
 * // Result: { limit: 10, includeBranches: true }
 */
export declare function applyDefaults<T extends object>(options: Partial<T>, defaults: Partial<T>): T;
