import { Context } from 'use-context-selector';
import { EqualityFn } from './equalities';

type Selector<Value, Selected> = (value: Value) => Selected;
declare const unset: undefined;
type GenericContextTuple<T> = [
    <Selected = T>(selector?: Selector<T, Selected>, eqlFn?: EqualityFn<Selected>) => Selected,
    Context<T>,
    <Selected = T>(selector?: Selector<T | typeof unset, Selected>, eqlFn?: EqualityFn<Selected>) => Selected | undefined
];
export declare function createGenericContext<T>(name: string, defaultValue?: T): GenericContextTuple<T>;
export {};
//# sourceMappingURL=create-generic-context.d.ts.map