import { Option } from './option';
/**
* Some represents non-emptiness. It signals that a value that may not exist does actually exist.
*/
declare class Some implements Option {
private value;
readonly isDefined: boolean;
readonly isEmpty: boolean;
constructor(value: A);
equals(other: Option): boolean;
filter(predicate: (value: A) => boolean): Option;
filterNot(predicate: (value: A) => boolean): Option;
flatMap(flatMapper: (value: A) => Option): Option;
foreach(run: (value: A) => void): void;
get(): A;
getOrElse(this: Some, defaultValue: () => B): B;
map(mapper: (value: A) => B): Option;
match(matcher: {
Some: (a: A) => B;
None: () => B;
}): B;
orElse(this: Some, alternative: () => Option): Option;
}
export { Some };